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,特别是在分配名称
属性的位置,如果该属性起作用,它将在堆栈面板中绑定