我正在为Windows Phone 8.1制作通用应用程序,但我的代码出现问题。
TextBlock值大于或等于22后,某些图像应该可见。如果该值小于22,则所有图像都应该是不可见的。
我的问题:如何在文本块值之后获取可见图像> =" 22"
这是隐藏图片的代码:
df = pd.DataFrame(np.random.rand(5, 3), columns=list('ABC'))
target_rows = [1, 3, 4]
a = df.iloc[[i for i in df.index if i not in target_rows], :]
b = df.iloc[target_rows, :]
>>> pd.concat([a, b])
A B C
0 0.818722 0.174153 0.522383
2 0.581577 0.840306 0.985089
1 0.645752 0.238476 0.670922
3 0.198271 0.501911 0.954477
4 0.965488 0.735559 0.701077
此代码部分来自XAML:
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));
}
我遇到问题:<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}"/>
名称&#39; RaisePropertyChanged&#39;在当前上下文中不存在
这是否意味着我用这个名字做了一些对象?或其他什么?
我可以提供My application,以便您了解正在发生的事情。
答案 0 :(得分:1)
RaisePropertyChanged是MVVM Light的方法,每当您使用给定名称引发属性时都会更新UI。在后面的XAML代码中,您将ViewModel的属性绑定到XAML属性,并且当RaisePropertyChanged触发时,它会通知给定属性并且UI在刷新之后刷新
您还需要使用转换器将布尔值转换为Visibility。通常,您需要更多的MVVM模式知识到Windows项目。