[英]C# Clear all items in ListView
我嘗試清除列表視圖,但clear方法不起作用:
myListView.Items.Clear();
這不起作用。 當我在此行上設置斷點時,將執行該行,但我的listview不為空。 怎么會??
我通過將其數據源設置為數據表來填充列表視圖。
我現在的解決方案是將數據源設置為空的數據表。
我只是想知道為什么清楚不做這招?
我使用母版頁。 這里是按下按鈕時內容頁面的一些代碼。 SearchTitle方法將填充ListView。
相關代碼:
protected void Zoek()
{
// Clear listbox
ListView1.DataSource = new DataTable();
ListView1.DataBind();
switch (ddlSearchType.SelectedValue)
{
case "Trefwoorden":
SearchKeyword();
break;
case "Titel":
SearchTitle();
break;
case "Inhoud":
SearchContent();
break;
}
}
填充ListView的方法
private void SearchTitle()
{
// Make panel visible
pnlResult.Visible = true;
pnlKeyword.Visible = false;
Search Search = new Search(txtSearchFor.Text);
ListView1.DataSource = Search.SearchTitle();
ListView1.DataBind();
}
怎么樣
DataSource = null;
DataBind();
嘗試這個 ...
myListView.DataSource = null;
myListView.Items.Clear();
我對此進行了搜索,並且正在使用WPF c#。 萬一您到這里也正在尋找WPF解決方案,請使用以下命令:
yourlistview.ItemsSource = null;
我的猜測是Clear()
導致發送Changed
事件,這又觸發了從數據源自動更新列表視圖。 所以這是一個功能,而不是一個錯誤;-)
您是否嘗試過使用myListView.Clear()
而不是myListView.Items.Clear()
? 也許效果更好。
不要理會Clear()。 只需執行以下操作:ListView.DataSource = null; ListView.DataBind();
關鍵是databind(); 每次都為我工作。
出現問題是因為您試圖清除整個列表框。 只需使用listView1.Items.Clear();
試試這個:
myListView.ItemsSource = new List< DictionaryEntry >();
我建議從基礎數據表中刪除行,或者如果不再需要該數據表,則將數據源設置為null。
可能您的代碼有效,但清除后會反彈。 確保不是這種情況。 如果您提供一些代碼,它將更有幫助。 您在哪里設置數據源? 您在哪里綁定數據? 您在哪里清除清單?
listView.Items.Clear()
listView.Refresh()
/ e由於缺乏解釋,正在更新。 通常,Clear()不足以應對緊隨其后的事件/方法。 最好在Clear()之后使用Refresh()更新視圖,以立即反映listView清除。 無論如何,這解決了我的相關問題。
這有點晚了,但這至少對我有用UWP
myListView.ItemsSource = null;
只需使用清除方法就可以像魅力一樣。 ListView1.Items.Clear()我認為如果它不起作用,可能是您放置此代碼的位置。 也可以嘗試使數據源無效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.