0
ドロップダウンチェックボックスと大量のデータを持ついくつかの異なるテンプレート列を持つデータグリッドがあります。ここでの問題は、セルを無効にするプロパティを設定し、そのプロパティでRaisePropertyChangeを実行することです。私は下にスクロールし、下にデータを読み込むときにのみ更新されます。だから私はメッセージを送信し、グリッド内のアイテムを更新することを決めた。WPF DataGridは、リフレッシュ時にUIをハングします
次のコードは、メッセージを受信するときにグリッドをリフレッシュするためのコードです。
void RefreshGrid(RefreshGridMessage msg)
{
switch (msg.MsgType)
{
case RefreshGridMessage.MessageType.ExportChanged:
this.Dispatcher.Invoke
(
new RefreshDelegate(
delegate
{
myGrid.Visibility = Visibility.Collapsed;
myGrid.Items.Refresh();
myGrid.Visibility = Visibility.Visible;
}
),
null
);
break;
}
}
ここで問題となるのは数秒間UIをハングアップしてから、完全に動作し、結果が得られます。
ここで問題になるのは、この垂れ下がりを止めてスムーズに動作させる方法ですか?
申し訳ありませんが、役に立たなかったです。それはまだぶら下がっている。はい、私は別のスレッドからそれをリフレッシュしています。 –