【发布时间】:2016-09-06 20:19:05
【问题描述】:
自 1 周以来,我就遇到了严重的问题。实际上,我在MainWindow 页面中有一个按钮,比如Button1,在用户控制页面中有一个复选框,比如CheckBox1。所以情况是,当我点击Button1 时,CheckBox1 应该显示为 Checked 但没有发生这样的事情。我在 MainWindow 页面中有 Button1_Click 方法,我通过调用 UserControl 类的实例来调用 CheckBox1.IsChecked = true,例如
UserControl UC = new UserControl();
UC.CheckBox1.IsChecked =true;
我正在发布一个演示代码以进行更多说明:这是我想做的方式
我的 MainWindow.Xaml 页面:
<Window x:Class="MyWpfApplicationDemo.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:MyWpfApplicationDemo"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Button x:Name="btnCheck" Width="110" Height="25" Margin="16,10,165,36" FontWeight="Medium" Click="btnCheck_Click" />
<local:MyUserControlDemo x:Name="MyUserControlDemo" Visibility="Visible" Margin="-54,-49,56,49" />
</Grid>
</Window>
我的 MainWindow.Xaml.cs 页面
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void btnCheck_Click(object sender, RoutedEventArgs e)
{
MyUserControlDemo us = new MyUserControlDemo();
us.chkCheckbox_CheckedChanged(null, null);
}
}
我的 UserControl.Xaml 页面
<UserControl x:Class="MyWpfApplicationDemo.MyUserControlDemo"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300">
<Grid>
<CheckBox x:Name="chkCheckbox" Margin="45,0,0,0" Grid.Column="2" Cursor="Hand" Width="100" Height="30" HorizontalAlignment="Center" VerticalAlignment="Center" Checked="chkCheckbox_CheckedChanged" />
</Grid>
</UserControl>
我的 UserControl.Xaml.cs 页面
public partial class MyUserControlDemo : UserControl
{
static int count;
public MyUserControlDemo()
{
InitializeComponent();
}
public void chkCheckbox_CheckedChanged(object sender, RoutedEventArgs e)
{
chkCheckbox.IsChecked = true;
}
}
但在获得真实值后,未选中该复选框,我希望尽快完成此操作,因为我的项目将在解决此问题后交付。
请帮帮我。
提前致谢
【问题讨论】:
-
窗口上是否添加了用户控件?你能发布更多代码更具体吗?
-
是的..我在窗口上添加了用户控件
-
请发布更多代码以进行澄清。贴出代码还不够
-
您的问题和建议答案的 cmets 信息不足以了解您的实际需求。请提供更多代码/更好地解释您的问题
标签: wpf wpf-controls