wpf 中文本块中的文本和行数问题

本文关键字:文本 问题 中文 wpf | 更新日期: 2023-09-27 18:34:08

在我的代码中,当我的提交按钮被单击时,我试图从选项窗口中的文本框中获取值。我知道我需要将字符串隐藏成我已经完成的双精度,但我的问题是 distanceOption 只是设置为 0.0 而不是用户放入文本框的值。我认为我的麻烦可能出在文本框的行数上。我的行计数变量一直显示为 -1,不确定这是否是值应该是什么。

        void Options_Clicked(object sender, RoutedEventArgs e)
    {
        OptionsWindow optionsWindow = new OptionsWindow();
        optionsWindow.Show();
        optionsWindow.DistanceButton.Click += new RoutedEventHandler(Distance_Clicked);
    }
    void Distance_Clicked(object sender, RoutedEventArgs e)
    {
        OptionsWindow optionsWindow = new OptionsWindow();
                  int lineCount = optionsWindow.DistanceBox.LineCount;
                 this.distanceOption = Convert.ToDouble(optionsWindow.DistanceBox.GetLineText(lineCount));
    }

如果有更好的方法可以从文本框中获取值,我也愿意接受。谢谢!

wpf 中文本块中的文本和行数问题

下面是一个例子

public partial class MainWindow : Window
{
    NewWindow optionsWindow = new NewWindow();
    public MainWindow()
    {
        InitializeComponent();
        optionsWindow.button1.Click += new RoutedEventHandler(button1_Click);
        optionsWindow.Show();
    }
    void button1_Click(object sender, RoutedEventArgs e)
    {
        double d = Convert.ToDouble(optionsWindow.textBox1.GetLineText(0));
    }

}

创建一个适当的 ViewModel 并使用 DataBinding:

XAML:

<TextBox Text="{Binding MyDouble}"/>

视图模型:

public double MyDouble {get;set;} //Probably NotifyPropertyChanged