简体   繁体   English

在选择更改时设置TextBlock可见性

[英]Setting TextBlock Visibility on selection Change

Currently I have a combo box, and want to change the visibility of a TextBlock on certain selections. 目前,我有一个组合框,并且想要更改某些选择上TextBlock的可见性。

Error it's producing Object reference not set to an instance of an object. 错误,产生的Object reference not set to an instance of an object.

private void Selection(object sender, SelectionChangedEventArgs e)
{
    if (Findpf() == 12)
    {
        DateAutoCompleteBox.Visibility = System.Windows.Visibility.Collapsed;
    }
    else
    {
        DateAutoCompleteBox.Visibility = System.Windows.Visibility.Visible;
    }
}

Tried = Visibility.Collapsed also and same result. 尝试= Visibility.Collapsed也折叠,结果相同。 How do i fix this ? 我该如何解决 ?

public uint Findpf()
{
    if (Pf.Text == "Annual")
    {
        return 1;
    }
    if (Pf.Text == "Semi-annual")
    {
        return 2;
    }
    if (Pf.Text == "Tri-Annual")
    {
        return 3;
    }
    if (Pf.Text == "Quarterly")
    {
        return 4;
    }
   if (Pf.Text == "Bi-Monthly")
    {
        return 6;
    }
     if (Pf.Text == "Monthly")
    {
         return 12;
    }
}

Initialization of Autocompletebox Xaml Autocompletebox Xaml的初始化

<telerik:RadAutoCompleteBox x:Name="DateAutoCompleteBox" Visibility="Visible" Width="220"></telerik:RadAutoCompleteBox>

you can try this to check what value is null 您可以尝试检查此值是否为空

private void Selection(object sender, SelectionChangedEventArgs e)
{
    if(DateAutoCompleteBox == null)
    {
        MessageBox.Show("DateAutoCompleteBox   is null"); return;
    }
    if(Pf == null)
    {
        MessageBox.Show("Pf  is null"); return;
    }
    if(Pf.Text == null)
    {
        MessageBox.Show("Pf.Text  is null"); return;
    }
    if (Findpf() == 12)
    {
        DateAutoCompleteBox.Visibility = System.Windows.Visibility.Collapsed;
    }
    else
    {
        DateAutoCompleteBox.Visibility = System.Windows.Visibility.Visible;
    }
}

DateAutoCompleteBox设置为null,您不能访问或设置未初始化对象的属性。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM