将值从父页面传递给子窗口
本文关键字:窗口 | 更新日期: 2023-09-27 18:04:53
我需要将值传递给子窗口。在子窗口中有两个文本框。我需要在子窗口文本框中显示值,当它被打开时。
我尝试了下面的方法,我的孩子窗口类如下,
public partial class ChildWindow:ChildWindow
{
public int abc {get;set;}
public string value{get;set;}
public ChildWindow()
{
InitializeComponent();
this.txtbox1.Text = abc ;
this.txtbox2.Text = value;
}
private void OKButton_Click(object sender, RoutedEventArgs e)
{
this.DialogResult = true;
}
private void CancelButton_Click(object sender, RoutedEventArgs e)
{
this.DialogResult = false;
}
}
我的父窗口如下,
private void EditButton_Click(System.Object sender, System.Windows.RoutedEventArgs e)
{
ChildWindow child= new ChildWindow();
child.abc = 1;
child.alue = "Hello"
child.show();
}
我怎么能显示与值的子窗口控件(这是从父),而它被打开?
您可以更改以下内容:
public int abc {get;set;}
public string value{get;set;}
:
public int abc
{
get
{
int result = 0;
int.TryParse(this.txtbox1.Text, out result);
return result;
}
set
{
this.txtbox1.Text = value;
}
}
public string value
{
get
{
return this.txtbox2.Text;
}
set
{
this.txtbox2.Text = value;
}
}
代码中的问题是,属性是在控件初始化期间分配的。
可以创建constructor
的overload
public ChildWindow(string abc,string value)
{
InitializeComponent();
this.txtbox1.Text = abc ;
this.txtbox2.Text = value;
}
创建object
ChildWindow child= new ChildWindow("abc","somevalue");