Member 13066145 Ответов: 1

Как получить следующую кнопку Изменить имя файла без расширения C#


Нажмите кнопку Далее, изображение изменится, но имя файла никогда не изменится;

Что я уже пробовал:

private void button2_Click(object sender, System.EventArgs e)
        {
            if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
            {
                listBox1.Items.Clear();
                listBox1.Refresh();
                listBox1.Sorted = true;
                string[] part1 = null, part2 = null, part3 = null;
                part1 = Directory.GetFiles(folderBrowserDialog1.SelectedPath, "*.jpg");
                part2 = Directory.GetFiles(folderBrowserDialog1.SelectedPath, "*.jpeg");
                part3 = Directory.GetFiles(folderBrowserDialog1.SelectedPath, "*.bmp");

                folderFile = new string[part1.Length + part2.Length + part3.Length];

                Array.Copy(part1, 0, folderFile, 0, part1.Length);
                Array.Copy(part2, 0, folderFile, part1.Length, part2.Length);
                Array.Copy(part3, 0, folderFile, part1.Length + part2.Length, part3.Length);

                selected = 0;
                //begin = 0;
                end = folderFile.Length;

                showImage(folderFile[selected]);

                string folderName = this.folderBrowserDialog1.SelectedPath;
                foreach (string f in Directory.GetFiles(folderName))
                {
                    if (f.ToLower().EndsWith(".jpg")==true || f.ToLower().EndsWith(".jpeg")==true)
                    {
                        this.listBox1.Items.Add(Path.GetFileNameWithoutExtension(f));
                    }
                button1.Enabled = true;
                button3.Enabled = true;
                listBox1.Enabled = true;
            }
                //label1.Text = this.folderBrowserDialog1.SelectedPath;
            }             
  }
private void nextImage()
{
if(selected == folderFile.Length - 1)
{
selected = 0;	
showImage(folderFile[selected]);

}
else
{
selected = selected + 1; 
showImage(folderFile[selected]);
}
}

[no name]

Да... тебе все равно понадобится лучшее объяснение. Умение использовать отладчик для отладки кода также является очень ценным навыком.

[no name]

где вы меняете имя файла в приведенном выше коде?

Member 13066145

Привет;
Я получаю имя файла в "this. listBox1.Предметы.Добавить(Путь.GetFileNameWithoutExtension(Ф));"
и что я могу сделать в абзаце" pre>private void nextImage ()"?
Я не знаю, что я могу написать код void nextImage?

Karthik_Mahalingam

Всегда использовать  Ответить   кнопка для отправки комментариев / запросов заинтересованному пользователю, чтобы пользователь получил уведомление и ответил на ваш текст.

j snooze

Не знаю, полностью ли я понимаю, что вы говорите о том, что имя файла не меняется. Если ваш список списка содержит тот же порядок и длину, что и ваш массив folderFile, почему вы не можете просто сделать this.listbox1.Items [selected] .Selected = true или какой-либо другой точный синтаксис? но вы заполняете список только файлами jpeg, а не файлами bmp в соответствии с опубликованным кодом. очень запутанно пытаться понять. Помните, что мы не можем видеть ваш экран, поэтому одна строка «что-то не работает», а затем публикация кучи кода, который не работает, нам не поможет. Нам нужно понимать, что вы пытаетесь сделать, что на самом деле происходит и какие ошибки могут возникать.

Member 13066145

Я открываю папку, чем указываю на pictureBox и имя файла в списке, нажимаю кнопку next или previous picture changed, но имя файла никогда не меняется в списке . Что я могу написать код в private void nextImage (). Нажмите кнопку Далее изменить картинку, чтобы изменить имя файла в списке.

Member 13066145

это. listbox1.Предметы[выбор].Selected = true
Не работает этот код.

1 Ответов

Рейтинг:
0

Member 13066145

использование системы;
использование системы.Коллекции.Общий;
использование системы.ComponentModel;
используя системы.Сведения;
использование системы.Рисование;
использование System. Linq;
используя системы.Текст;
использование системы.Нарезание резьбы.Задачи;
использование системы.Окна.Формы;
использование системы.ИО;

пространство имен folderBrowser
{
общественности частичного класс form1 : форма
{
открытый form1()
{
метод InitializeComponent();
}

частный недействительными обработчика button1_click(объект отправителя, EventArgs в электронной)
{
строка[] фильтры = { "*.форматы jpg", "*.в формате JPEG", "*.файл PNG", "*.с GIF", "*.БМП" };
// измените путь на свой
var directory = new DirectoryInfo (@"C:\Pictures");

var files = новый список & lt;fileinfo>();

(фильтр по каждому элементу ВАР в фильтрах)
{
var results = каталог.GetFiles (filter, SearchOption.AllDirectories);
файлы.AddRange(результаты);
}

foreach (var file in files)
{
список listbox1.Предметы.Добавить файл));
}

}

private void listBox1_MouseClick(отправитель объекта, MouseEventArgs e)
{
имя picturebox1.Образ = Образ.FromFile (((FileInfo)listBox1. SelectedItem).Полное имя);
}

private void listBox1_SelectedIndexChanged(отправитель объекта, EventArgs e)
{
имя picturebox1.Образ = Образ.FromFile (((FileInfo)listBox1. SelectedItem).Полное имя);
}
}
}