2014-02-24 79 views
-1

我在我的列表框中有一組項目。列表框中的項目鏈接到另一個文本框中的特定項目。用戶可以添加和刪除列表框中的項目。如果列表框中的任何項目正在任何地方使用,則用戶不應該刪除它。我可以禁用這些項目,但客戶端不想禁用這些項目,我想阻止用戶選擇某些項目。 我該如何做到這一點?C#:防止用戶選擇列表框中的某些項目

+0

什麼在你的listBox?你是如何填充你的列表框的?它只包含字符串嗎?或者你在使用數據源? –

+0

XAML或Windows Forms? –

+0

我正在使用數據源。在將數據填充到數據源之前,我將能夠知道哪些項目可以填充。 –

回答

1

真的,你不應該。 A ListBox是一個用於顯示可以選擇的東西的UI約定,因此如果您打算打破該約定並顯示可以選擇或不能選擇的組合,那麼您可能會做錯事情。

您使用的數據源,所以不是僅僅堅持直接進入你的ListBox要篩選它(通過刪除不能選擇的東西)轉換成不同的集合,然後可以充當ItemsSource。那麼你的ListBox只包含可以選擇的東西。

或者,如果沒有,請處理SelectedItem更改,並採取措施阻止它被設置爲您想禁止的其中一項。但是,真的,不要這樣做。這將是一個可怕的和令人困惑的UI體驗。只要顯示有效的東西。

相關問題