gpt4 book ai didi

c# - 绑定(bind) Observable 集合上的 GeneratorPosition 错误

转载 作者:行者123 更新时间:2023-11-30 18:01:11 25 4
gpt4 key购买 nike

我正在使用一个 Transitionals Slideshow 控件,它有一个绑定(bind)到 itemsource 的可观察字符串集合。这些字符串是幻灯片中每张图片的文件路径。当我第一次加载 WPF 应用程序时,它会正确运行此方法(使用目录路径生成 PicSlideShowCollection):

public void SelectImages(string path)
{
// Validate
if (string.IsNullOrEmpty(path)) throw new ArgumentException("path");

PicSlideShowCollection.Clear();


// Get directory info for specified path
DirectoryInfo di = new DirectoryInfo(path);

// Image mask
string[] extensions = new string[] { "*.jpg", "*.png", "*.gif", "*.bmp" };

// Search for all
foreach (string extension in extensions)
{
foreach (FileInfo fi in di.GetFiles(extension.ToLower()))
{
PicSlideShowCollection.Add(fi.FullName);
}
}
}

但是,我有一个按钮,允许用户更改要在幻灯片中使用的图像目录并重新运行上述方法。执行时,出现此错误:

GeneratorPosition '-1,1' passed to Remove does not have Offset equal to 0.

这发生在 PicSlideShowCollection.Clear() 指令上。如果我评论该指令,新目录图像将添加到原始目录图片中,这不是我想要的。

我知道这与 PicSlideShowCollection 用作幻灯片放映控件的项目源有关,但我需要知道如何防止发生此错误。

谢谢!

最佳答案

Slideshow.AutoAdvance = false;

Slideshow.SelcetedIndex=-1;

var count=PicSlideShowCollection.Count;

forearch(var item in newsources)
{
PicSlideShowCollection.Add(item);
}

while(count--)
PicSlideShowCollection.RemoveAt(0);

Slideshow.SelcetedIndex=0;

关于c# - 绑定(bind) Observable 集合上的 GeneratorPosition 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9330619/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com