Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在选择更改时设置TextBlock可见性_C#_Winforms_Telerik - Fatal编程技术网

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

C# 在选择更改时设置TextBlock可见性,c#,winforms,telerik,C#,Winforms,Telerik,目前,我有一个组合框,希望更改某些选择上文本块的可见性 错误:它正在生成未设置为对象实例的对象引用。 private void Selection(object sender, SelectionChangedEventArgs e) { if (Findpf() == 12) { DateAutoCompleteBox.Visibility = System.Windows.Visibility.Collapsed; } else {

目前,我有一个组合框,希望更改某些选择上文本块的可见性

错误:它正在生成未设置为对象实例的
对象引用。

private void Selection(object sender, SelectionChangedEventArgs e)
{
    if (Findpf() == 12)
    {
        DateAutoCompleteBox.Visibility = System.Windows.Visibility.Collapsed;
    }
    else
    {
        DateAutoCompleteBox.Visibility = System.Windows.Visibility.Visible;
    }
}
已尝试
=可见性。已折叠
,结果相同。我该如何解决这个问题

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;
    }
}
自动完成盒Xaml的初始化

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


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

您可以尝试此操作以检查值是否为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;
    }
}

您可以为Findpf()添加代码吗?它只返回基于文本框值的整数,但请确定。请显示您正在创建
DateAutoCompleteBox
的Xaml,特别是在分配
名称
属性的位置,如果该属性起作用,它将在堆栈面板中绑定