1

ボタンをクリックして新しいアイテムを追加するlistboxたびにクリアしたいのですが、クリアする際に問題に直面しています。addImages以下は私のコードです:

private void addImages_Click(object sender, RoutedEventArgs e)
{ 
    FileInfo Images;
    string[] filenames = null;
    System.Windows.Forms.FolderBrowserDialog folderDlg = new System.Windows.Forms.FolderBrowserDialog();
    folderDlg.ShowNewFolderButton = true;
    System.Windows.Forms.DialogResult result = folderDlg.ShowDialog();

    if (result == System.Windows.Forms.DialogResult.OK)
    {
        filenames = System.IO.Directory.GetFiles(folderDlg.SelectedPath);

        foreach (string image in filenames)
        {
            Images = new FileInfo(image);

            if(Images.Extension.ToLower() == ".png" || Images.Extension.ToLower() == ".jpg" || Images.Extension.ToLower() == ".gif" || Images.Extension.ToLower() == ".jpeg" || Images.Extension.ToLower() == ".bmp" || Images.Extension.ToLower() == ".tif")
            {
                ImageList.Items.Add(new LoadImages(new BitmapImage(new Uri(image))));
            }
        }
    }
}

試してみましImageList.items.clear()BindingOperations.ClearAllBindings(ImageList)が、これらのアイテムは、次回ボタンがクリックされたときに初めて削除され、リストがクリアされません。ボタンがクリックされるたびにリストをクリアしたい。

4

3 に答える 3

0

ListBox.Items.Clearボタンがクリックされるたびにリストをクリアする必要がある場合は、イベントハンドラーでそれが必要です。

private void addImages_Click(object sender, RoutedEventArgs e)
{
    listBox.Items.Clear();
    // do stuff
}
于 2013-10-22T10:45:45.557 に答える
0

これを試して ..

ImageList.Images.Clear();
listBox.Items.Clear();
于 2013-10-22T11:14:48.570 に答える