C#可见不';t工作
我正在为Windows Phone 8.1制作一个通用应用程序,我的代码有问题 TextBlock值大于或等于22后,某些图像应可见。如果该值小于22,则所有图像都应不可见 我的问题:如何在textblock值>=“22”后获得可见图像 这是我隐藏图像的代码:C#可见不';t工作,c#,visual-studio-2013,windows-phone-8.1,C#,Visual Studio 2013,Windows Phone 8.1,我正在为Windows Phone 8.1制作一个通用应用程序,我的代码有问题 TextBlock值大于或等于22后,某些图像应可见。如果该值小于22,则所有图像都应不可见 我的问题:如何在textblock值>=“22”后获得可见图像 这是我隐藏图像的代码: private void points_Loaded(object sender, RoutedEventArgs e) { int n = 0; bool b = int.TryParse(points.Text, out n)
private void points_Loaded(object sender, RoutedEventArgs e)
{
int n = 0;
bool b = int.TryParse(points.Text, out n);
DataContext = this;
ImageVis = (b && n >= 22) ? Visibility.Visible : isibility.Collapsed;
}
private Visibility imageVis;
public Visibility ImageVis
{
get { return imageVis; }
set
{
imageVis = value;
RaisePropertyChanged("ImageVis");
}
}
public event PropertyChangedEventHandler PropertyChanged = delegate { };
protected void RaisePropertyChanged(string propertyName)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
此代码部分来自XAML:
<Image x:Name="hole17img"
HorizontalAlignment="Left"
Height="57"
Margin="10,3540,0,0"
VerticalAlignment="Top"
Width="380"
Source="Assets/septinpatsmit.png"
Stretch="Fill"
Visibility="{Binding ImageVis, Mode=TwoWay}"/>
我有以下问题:RaisePropertyChanged(“ImageVis”)代码>
当前上下文中不存在名称“RaisePropertyChanged”
这是不是意味着我用这个名字做了一些东西?还是别的什么
我可以提供我的信息,这样你就可以看到发生了什么
RaisePropertyChanged是MVVM Light的方法,每当您使用给定名称引发属性时,它都会更新UI。在XAML代码中,您将ViewModel的属性绑定到XAML属性,当RaisePropertyChanged触发时,它会通知给定属性,并在触发后刷新UI
您还需要使用转换器将布尔值转换为可见性。一般来说,您需要更多的MVVM模式知识来支持Windows项目
看看这篇文章