我正在尝试在单击按钮时实现弹出窗口。我希望将按钮绑定到我的ViewModel中的RelayCommand,并且从这个RelayCommand我希望添加我的PopUp。 Popup是在View(xaml)中制作的。我正在使用MVVM模型用于Windows手机。我的Popup的View(xaml)是:
<Popup>
<Border Background="Blue">
<TextBlock Text="Hej med dig" FontSize="25"/>
</Border>
</Popup>
我的按钮的视图(xaml)是
<Button BorderBrush="Transparent" BorderThickness="0" Command="{Binding ClickCommand}" CommandParameter="{Binding}">
<Button.Template>
<ControlTemplate>
<Path x:Name="CountryUser" Stretch="Fill" StrokeThickness="{StaticResource StrokeUserControl}" StrokeLineJoin="Round" Fill="{StaticResource CountryBackground}" Stroke="{Binding CountryView.CountryColor}" Data="{Binding CountryView.MapData}"/>
</ControlTemplate>
</Button.Template>
</Button>
绑定到我的Button的ViewModel(C#),以及我希望添加RelayCommand的地方,点击我的按钮后激活Popup:
public ICommand ClickCommand { get; set; }
public CountryViewModel()
{
ClickCommand = new RelayCommand(Click);
}
public void Click()
{
PopUpUC TextPopUp = new PopUpUC();
}
我的问题是,当我点击弹出窗口未显示的按钮时,任何帮助都会很好。
答案 0 :(得分:2)
在xaml中,你应该将东西绑定到IsOpen属性,所以:
<Popup IsOpen="{Binding PopUpUCIsOpen}">
<Border Background="Blue">
<TextBlock Text="Hej med dig" FontSize="25"/>
</Border>
然后在点击中更改变量。