私のネットワークをスキャンしてコンピュータを見つけるシンプルなフォームがあります。私は動的に発見された各コンピュータのユーザーコントロールを追加します。各ユーザーコントロールには、管理する必要があるドロップダウンリストがあります。 UIのスクリーンショットは次のとおりです。 他のリストボックスが選択したリストボックスの項目を削除する
各リストボックスには2つのリストがあります。わかりやすくするために、左の列リストボックスはlaptops.xmlデータソースにバインドされ、右の列リストボックスはservers.xmlにバインドされています。
laptops.xmlには、次のエントリが含まれているとしましょう:
- DellのInspiron
- Asusの
- マックエア
とservers.xmlは、これらのエントリが含まれています。
- 、Dell Poweredgeの
- HPテープバックアップ
- のDell Precision
- Linuxの
だから私は実行するUIは、ユーザーがリストから項目を選択するたびに、その項目から削除する必要がある必要なものそれ以外のリストを2回選択することはできません。それは、同じリストに結び付けられている他のリストだけを変更する必要があることに注意してください...言い換えると、最初のドロップダウンから「Mac Air」を選択すると、プログラムはリストボックスserver.xmlに関連付けられます。
どのリストボックスがどのxmlファイルにバインドされているかを調べるために、ユーザーコントロールが動的に作成されてフォームに追加されたときに、リストボックスの.Tag
プロパティを使用します。
ObservableCollectionを使用してこれを行うことはできますが、実装する方法がわからず、必要な処理を実行できると思うでしょう。
S.Akbari @ - 私は」ユーザーがそれぞれを選択するときに「選択」リストを管理しようとしています。したがって、ユーザーが左側の最初のリストボックスから「Dell」を選択した場合。他の2つのリストボックスは、リストからそのエントリを削除して、再度選択できないようにする必要があります。 – Robert