【问题标题】:ConvertToInt32 textbox转换为 Int32 文本框
【发布时间】:2016-03-27 05:30:32
【问题描述】:

我正在用 C# WPF 构建一个小应用程序,它包含一个本地 SQL 数据库。然后这会显示在主窗口的数据网格上。我遇到问题,当我单击以编辑数据网格中的某一行时,它将文本框中的文本转换为我从主窗口传递的 Int 时会适得其反。

以下是我在用户单击编辑时使用的主窗口方法。

editStudent edit = new editStudent(stud.Id, stud.FirstName, stud.LastName, stud.Component1, stud.Component2, 螺柱.Component3);

然后在 editStudent.cs 文件中,我在构造函数中有这个,以便用 mainWindow 中的数据预填充文本框和组合框。我尝试运行该应用程序的所有内容我都说构造函数中的强制转换存在异常。我只是想知道是否有其他方法可以做到这一点?

这是mo的构造函数:

    public editStudent(int matno, string firstname, string lastname, string combo1, string combo2, string combo3)
    {
        InitializeComponent();

        matNoEditTbx.Text = matno;
        firstEditTbx.Text = firstname;
        lastEditTbx.Text = lastname;
        com1ComboEdit.Text = combo1;
        com2ComboEdit.Text = combo2;
        com3ComboEdit.Text = combo3;
    }

Visual Studio 的第一个指定文本框 matNoEditTbx.Text 存在问题。

【问题讨论】:

  • 这通常是有VB背景的人犯的错误。无法将整数值 (matno) 分配给字符串属性 (Text)。您应该在转换请求中明确说明。 C# 不会为你做这件事。更好。

标签: c# wpf visual-studio


【解决方案1】:

您不能将 int 分配给 TextBox 的 Text。你应该这样做:

matNoEditTbx.Text = matno.ToString():

【讨论】:

    【解决方案2】:

    不可能将int隐式转换为字符串

    matNoEditTbx.Text = Convert.ToString(matno);
    //or :
    matNoEditTbx.Text = matno.ToString():
    

    【讨论】:

      猜你喜欢
      • 2011-03-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-19
      相关资源
      最近更新 更多