我試圖在打開它之後將變量WorkOrderText
傳遞到新窗口。我使用了描述的方法here,但是變量值沒有被顯示。在Visual C中通過WPF Windows獲取和設置變量#
首先設置變量的窗口可以在這裏找到 public string testingString;
public partThreeWindow()
{
InitializeComponent();
}
private void Button_Click_1(object sender, RoutedEventArgs e)
{
testingString = new TextRange(descriptionBox.Document.ContentStart, descriptionBox.Document.ContentEnd).Text;
partFourWindow partFour = new partFourWindow();
partFour.workOrderText = testingString;
partFour.Show();
this.Hide();
}
正在接收變量和triyng顯示可以在這裏找到的窗口:
public string workOrderText { get; set; }
public partFourWindow()
{
InitializeComponent();
this.WindowStartupLocation = WindowStartupLocation.CenterScreen;
this.ResizeMode = ResizeMode.NoResize;
}
private void partFourWindow_Shown(object sender, EventArgs e)
{
testing.Text = this.workOrderText;
}
但文本框中顯示了空。我做錯了嗎?
是的,你做錯了。 WPF中的更改應該將視圖模型(即模型)返回到其他視圖模型,並讓INPC更新視圖。聽起來很多,但從長遠來看,它的方式更好。研究MVVM。 – BradleyDotNET
@BradleyDotNET展望MVVM。新來WPF和Visual C#,所以我不得不圍繞它。 – tmello01