C# необработанное исключение типа "system.nullreferenceexception" произошло в folderbrowser.exe
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.IO; using WMPLib; using System.Media; namespace folderBrowser { public partial class Form1 : Form { public Form1() { InitializeComponent(); } internal class ListItem { string path; private string v; public ListItem(string v) { this.v = v; } } private string v; public ListBox.SelectedIndexCollection SelectedIndices { get; } SoundPlayer player = new SoundPlayer(); WindowsMediaPlayer myplayer = new WindowsMediaPlayer(); private void button1_Click(object sender, EventArgs e) { string[] filters = { "*.jpg", "*.jpeg", "*.png", "*.gif", "*.bmp" }; var directory = new DirectoryInfo(@"D:\Dogukan\Ingcart"); var files = new List<fileinfo>(); foreach (var filter in filters) { var results = directory.GetFiles(filter, SearchOption.AllDirectories); files.AddRange(results); } foreach (FileInfo file in files) { //ListItem a = new ListItem(Path.GetFileNameWithoutExtension(file.FullName)); //listBox1.Items.Add(a); listBox1.Items.Add(Path.GetFileNameWithoutExtension(file.FullName)); } } private void listBox1_MouseClick(object sender, MouseEventArgs e) { pictureBox1.Image = Image.FromFile(((FileInfo)listBox1.SelectedValue).FullName); // pictureBox1.Image = Image.FromFile(((FileInfo)listBox1.SelectedItem).ToString()); textBox1.Text = listBox1.SelectedItem.ToString(); } private void listBox1_SelectedIndexChanged(object sender, EventArgs e) { //pictureBox1.Image = Image.FromFile(((FileInfo)listBox1.SelectedItem).FullName); pictureBox1.Image = Image.FromFile(((FileInfo)listBox1.SelectedValue).FullName); textBox1.Text = listBox1.SelectedItem.ToString(); } private void pictureBox1_Click(object sender, EventArgs e) { myplayer.URL = @"D:\Dogukan\" + "//" + listBox1.SelectedItem.ToString() + ".mp3"; myplayer.controls.play(); } private void FindMyString(string searchString) { for (int i = 0; i < listBox1.Items.Count; i++) { if (listBox1.Items[i].ToString().IndexOf(searchString, StringComparison.OrdinalIgnoreCase) >= 0) { listBox1.SetSelected(i, true); } else { // Do this if you want to select in the ListBox only the results of the latest search. listBox1.SetSelected(i, false); } } } private void textBox2_TextChanged(object sender, EventArgs e) { //int index = listBox1.FindString(this.textBox2.Text); //if (0 <= index) //{ // listBox1.SelectedIndex = index; //} } private void Form1_Load(object sender, EventArgs e) { } } }
Что я уже пробовал:
private void listBox1_MouseClick(object sender, MouseEventArgs e)Я пишу
pictureBox1.Image = Image.FromFile(((FileInfo)listBox1.SelectedItem).FullName);
код, когда я запустил программу и загрузил картинку, просмотр файлов в listBox1, чем я щелкнул мышью по файлу error System.NullReferenceException ' произошел в folderBrowser.exe. Что я должен делать ?
[no name]
"Что я должен делать ?", отлаживать ваш код и исправлять вашу нулевую ссылку.
Member 13066145
Извините, я не очень хорошо знаю c#. где я исправлю свою нулевую ссылку?