いくつかのバウンド とUserControl
で構成される があり、押されたボタンに基づいて、異なるデータが表示されます。のクリック イベントの1 つの例を次に示します。ItemsControl
strings
Button
private void LeftPreviousScoresButton_Click(object sender, RoutedEventArgs e)
{
if (m_previousScoresWindow.Visibility == Visibility.Visible)
{
m_previousScoresWindow.Hide();
}
else
{
WindowTitle = "Left Side";
PreviousScoresA = m_previousLeftWristErosionScoresReaderA;
PreviousScoresB = m_previousLeftWristErosionScoresReaderB;
m_previousScoresWindow.Show();
}
}
、 、およびを関連付けられたデータに割り当てるWindowTitle
、これらのクリック イベント リスナがいくつかあります。次に、次のようにそれらにバインドします。PreviousScoresA
PreviousScoresB
UserControl
<ItemsControl Height="Auto" Width="Auto"
ItemsSource="{Binding ElementName=ParentForm, Path=PreviousScoresA}"
Grid.Row="1" />
<ItemsControl Height="Auto" Width="Auto"
ItemsSource="{Binding ElementName=ParentForm, Path=PreviousScoresB}"
Grid.Row="2" />
<TextBlock FontSize="16" FontWeight="Bold" Height="25"
Margin="5" HorizontalAlignment="Center" Foreground="Black"
Text="{Binding ElementName=ParentForm, Path=PreviousScoresWindowTitle}" />
ただし、ウィンドウを開くと、現在のデータで更新される前に、古いデータが 1 秒間表示されます。を呼び出すときにこれらの呼び出しを追加しようとHide()
しましたWindow
が、役に立たなかったようです:
WindowTitle = String.Empty;
PreviousScoresA = new ObservableCollection<PreviousScoreData>();
PreviousScoresB = new ObservableCollection<PreviousScoreData>();
Show()
バインドされたデータが更新されるまで呼び出されないようにする方法はありますか? ありがとう。