列表框项被添加两次而不是一次
本文关键字:一次 两次 添加 列表 | 更新日期: 2023-09-27 18:06:00
我正在开发一个通用的windows应用程序,当我将一个项目添加到列表框时,它会出现两次,没有错误
代码
private async void btnNew_Click(object sender, RoutedEventArgs e)
{
listBox.Items.Add(nameBox.Text);
string type = comboBox.SelectedItem.ToString();
URL url = new URL();
url.type = type;
url.name = nameBox.Text;
url.info = infoBox.Text;
url.url = urlBox.Text;
url.isProtected = isProtectedSwitch.IsOn;
await url.saveToXML();
infoBox.Text = "";
nameBox.Text = "";
urlBox.Text = "";
comboBox.SelectedIndex = -1;
}
如果需要:
public async Task saveToXML()
{
//Directory.CreateDirectory(@"C:'Link");
URL newURL = new URL();
newURL.type = type;
newURL.name = name;
newURL.info = info;
newURL.url = url;
newURL.isProtected = isProtected;
newURL.amountOfClicks = amountOfClicks;
StorageFile file = await ApplicationData.Current.LocalFolder.CreateFileAsync(@"Link'" + newURL.name + ".xml", CreationCollisionOption.ReplaceExisting);
Stream fileStream = await file.OpenStreamForWriteAsync();
DataContractSerializer serialize = new DataContractSerializer(typeof(URL));
serialize.WriteObject(fileStream, newURL);
}
在您提供的代码中看不到任何问题。
在添加项目之前可能没有清除现有的listBox.Items
。在添加新项目列表之前,请确保您的listBox.Items.Clear()
。
添加项目前清理列表框
listBox.Items.Clear();
有可能,您双击此按钮,因此代码触发两次。