1


0

データバインディングモードExplicit

オブジェクトのリストを含むリストボックスを持っています(アドレスを言う)

リストボックスアイテムのソースは、この監視可能なコレクションにバインドされています


…​

それから私はテキストボックスを持っています、これは現在のオブジェクトの名前fildにバインドされています


そのため、明示的に更新しない限り、現在のオブジェクトのNameプロパティは変更されないと予想しています。

しかし、それは更新されています…​ 理由はありますか?

また、これはウィンドウ内にあり、ウィンドウを閉じてウィンドウを再度開くと、リストボックスでの同じ選択が保持されます。

ウィンドウが閉じられたら、リストボックスの現在の選択をすべて忘れてしまうと思っていましたか?

1 Answer


0


それを解決する方法を考え出し、listgboxにイベントを追加しました

private void OnListValueChanged(object sender, SelectionChangedEventArgs e)
        {
            ListBox lb = e.Source as ListBox;
            if (lb != null)
            {
                object dc = null;
                if (lb.SelectedIndex != -1)
                    dc = lb.Items[lb.SelectedIndex];

                gridDetails.DataContext = dc;
            }
        }

グリッドの詳細コンテキストは、毎回独立して設定されました。