スライダコントロールの値をTextBlockに表示しようとしています。しかし、私はダイアログをロードしようとするとNullRerferenceExceptionを取得し続けます。WPFスライダコントロール(NullReferenceException)
public partial class GeneralSettingsDialog : Window
{
public GeneralSettingsDialog()
{
InitializeComponent();
}
private void DistSlider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{
DistTextBlock.Text = DistSlider.Value.ToString();
}
}
XAML:、あなたのように動作していない理由を、私は最初の値変更イベントがスローされたときにコントロールが完全に初期化されていないと思います
<TabItem Header="Miscellaneous" Name="tabItem1" Background="#FFF0F0F0">
<Grid Height="230" Background="#FFF0F0F0">
<TextBlock Height="23" HorizontalAlignment="Left" Margin="13,13,0,0" Name="textBlock1" Text="Spacing" VerticalAlignment="Top" />
<Slider Height="23" HorizontalAlignment="Left" IsSnapToTickEnabled="True" TickPlacement="BottomRight" Margin="13,35,0,0" Name="DistSlider" VerticalAlignment="Top" Width="100" Interval="1" Maximum="50" Minimum="1" ValueChanged="DistSlider_ValueChanged" />
<TextBlock Height="23" HorizontalAlignment="Left" Margin="111,35,0,0" Name="DistTextBlock" Text="TextBlock" VerticalAlignment="Top" />
</Grid>
</TabItem>
オブジェクトDistSlider.Valueがnullかどうかをデバッグして確認してください。 –
メッセージボックスに値が表示されるので、問題はテキストブロックにあるようです。 – kr13
XAMLを表示してください。クリスタルボールはありません。 :) –