【问题标题】:Declarated a variable in WPF and i used it for another WPF wich C# [duplicate]在 WPF 中声明了一个变量,我将它用于另一个 WPF C# [重复]
【发布时间】:2018-12-19 09:49:05
【问题描述】:

当我在名为 txtCmdUrl 的文本框中引入 UrlTxt 时,我有一个 WPF 项目 这是我的代码 XAML station.xaml

<UserControl .....>


  <Grid x:Name="GridGlobal">
     <DockPanel Background="White" Margin="5" >
            <StackPanel DockPanel.Dock="Left" HorizontalAlignment="Left" Orientation="Horizontal" Margin="10 0 10 0">
                <StackPanel Orientation="Horizontal">

                    **<TextBox x:Name="txtCommandeUrl"  Width="500" 
                       Height="24" VerticalAlignment="Center"  />**
                    <mui:ModernButton x:Name="btnSave" Content="{x:Static 
                       p:Resources.Link_Save_Link}" Click="BtnSave_Click" 
                       VerticalAlignment="Center" Command="{Binding 
                      NextCommand, Mode=TwoWay}" IsEnabled="{Binding 
                    NextEnabled}"/>                        
                </StackPanel>
            </StackPanel>
  </Grid>
</UserControl> 

在我后面的代码中,我使用了带有此代码的点击按钮

    private string txtUrlStation = "";

    //BtnSave_Click
    private void BtnSave_Click(object sender, RoutedEventArgs e)
    {            
        try
        {
            txtUrlStation = txtCommandeUrl.Text;
            MessageBox.Show(txtSave);                                
        }
        catch
        {
        }
    }

我想在后面的代码中将我的变量 txtCommandeUrl 用于另一个 file.xaml 示例 station2.xaml。

谁能帮我解决这个小问题,谢谢

【问题讨论】:

    标签: c# wpf data-binding


    【解决方案1】:

    有几种方法可以完成这类事情。哪个最好取决于您想要做什么。

    这里有一些你可以使用的:

    PRISM eventtaggregator 或 Mvvmlight messenger 在新值发生变化时将其从一个发送到另一个。 https://social.technet.microsoft.com/wiki/contents/articles/26070.communicating-between-classes.aspx

    将您的属性移动到静态类上的静态方法,然后任何东西都可以引用。使其成为“全球性”。

    将您的属性移动到一个实例类中,然后直接从一个实例类传递到另一个实例类。

    将您的属性移动到一个实例类,然后使用依赖注入将其间接传递给另一个。

    将其设为公共属性并将引用从您的第一个窗口/其他窗口传递到下一个窗口。这更适用于第二个是第一个的孩子的情况,因为您正在创建依赖项。

    【讨论】:

    • 那么如果我想将我的变量发送到 class.cs 我将使用的代码是什么?
    • 这取决于您选择的选项。有一个信使的工作样本。依赖注入注册一个类的实例,当您解析或获取一个类时,将该类型作为构造函数参数,它提供实例。当你新建一个时,通过参数传递参数(通常是 this )到 class1 构造函数。
    猜你喜欢
    • 1970-01-01
    • 2022-11-12
    • 2017-01-28
    • 2019-08-03
    • 2012-08-16
    • 2013-12-04
    • 1970-01-01
    • 1970-01-01
    • 2011-10-17
    相关资源
    最近更新 更多