点击按钮弹出

时间:2013-11-08 11:01:20

标签: c# xaml mvvm windows-phone-8 popup

我正在尝试在单击按钮时实现弹出窗口。我希望将按钮绑定到我的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();  

   }

我的问题是,当我点击弹出窗口未显示的按钮时,任何帮助都会很好。

1 个答案:

答案 0 :(得分:2)

在xaml中,你应该将东西绑定到IsOpen属性,所以:

<Popup IsOpen="{Binding PopUpUCIsOpen}">
<Border Background="Blue">
    <TextBlock Text="Hej med dig" FontSize="25"/>
</Border>

然后在点击中更改变量。