首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将textbox值从父窗口传递到页wpf

将textbox值从父窗口传递到页wpf
EN

Stack Overflow用户
提问于 2013-10-27 03:41:28
回答 1查看 931关注 0票数 0

毫无疑问,我不是第一个问这种问题的人。问题是,对于其中的大多数,当涉及到wpf时,回复将参考MVVM,而不是真正解释如何做到这一点,或者至少给出一个适用的例子。其余的则是针对这些人的特定情况。

假设我在主窗口中有一个文本框,在页面中也有一个。我需要将主窗口中的文本框中的文本传递到子窗口中的文本框中。这是怎么做到的?

winforms中使用的方法似乎只适用于窗口到窗口。但是,每当您在页面声明中输入值并运行它时,它都会抛出一个异常。

页面是通过链接打开的,如果有任何用处,我使用的是wpf的现代ui主题:http://mui.codeplex.com

主窗口xaml

代码语言:javascript
运行
复制
  <mui:ModernWindow x:Class="Masca.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mui="http://firstfloorsoftware.com/ModernUI"
Title="Masca Database Admin" Height="800" Width="1280" IsTitleVisible="True"
LogoData="F1 M 24.9015,43.0378L 25.0963,43.4298C 26.1685,49.5853 31.5377,54.2651 38,54.2651C 44.4623,54.2651 49.8315,49.5854 50.9037,43.4299L 51.0985,43.0379C 51.0985,40.7643 52.6921,39.2955 54.9656,39.2955C 56.9428,39.2955 58.1863,41.1792 58.5833,43.0379C 57.6384,52.7654 47.9756,61.75 38,61.75C 28.0244,61.75 18.3616,52.7654 17.4167,43.0378C 17.8137,41.1792 19.0572,39.2954 21.0344,39.2954C 23.3079,39.2954 24.9015,40.7643 24.9015,43.0378 Z M 26.7727,20.5833C 29.8731,20.5833 32.3864,23.0966 32.3864,26.197C 32.3864,29.2973 29.8731,31.8106 26.7727,31.8106C 23.6724,31.8106 21.1591,29.2973 21.1591,26.197C 21.1591,23.0966 23.6724,20.5833 26.7727,20.5833 Z M 49.2273,20.5833C 52.3276,20.5833 54.8409,23.0966 54.8409,26.197C 54.8409,29.2973 52.3276,31.8106 49.2273,31.8106C 46.127,31.8106 43.6136,29.2973 43.6136,26.197C 43.6136,23.0966 46.127,20.5833 49.2273,20.5833 Z"          
ContentSource="/Pages/Home.xaml">

子窗口xaml

代码语言:javascript
运行
复制
  <UserControl x:Class="Masca.Mail.Configuration"
     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" 
     xmlns:mui="http://firstfloorsoftware.com/ModernUI"
     mc:Ignorable="d" 
     d:DesignHeight="800" d:DesignWidth="1280">

代码语言:javascript
运行
复制
<TextBox x:Name="alias" Margin="186,64,0,0" Height="18" VerticalAlignment="Top" HorizontalAlignment="Left" Width="211" FontSize="11" ></TextBox>

我这样做是为了让程序知道哪个用户正在登录,并可以记录谁正在对数据库进行哪些更改。

EN

回答 1

Stack Overflow用户

发布于 2013-10-27 20:59:27

我将如何将第二页的DataContext属性设置为第一页。然后我可以通过绑定访问第二个页面中第一个页面的属性。为此,最好在应用程序中使用MVVM,然后在第1页的ViewModel中定义属性,然后在第2页中定义DataContext。现在您可以在第2页中访问该属性。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19611060

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档