这一切都始于尝试拥有一个数字文本框。那部分无关紧要,但这就是我创建以下课程的原因。(顺便说一句,使用 VS 2012 Express、WPF、C# 代码隐藏)。
using System;
using System.Windows.Controls;
namespace Herculese
{
public class IntBox : TextBox
{
<!-- irrelevant code here-->
}
}
到目前为止,一切都很好。我构建,这成为我继续在 xaml 中使用的控件:
<local:IntBox Name="txtBox_heightft" Width="60" TextChanged="txtBox_Numeric_Changed" />
然后在我试图使用“txtBox_heightft.Text”引用文本框中的文本的代码后面,我被告知“当前上下文中不存在名称'txtBox_heightft'”。这让我很困惑,因为如果我在 xaml 中将“local:IntBox”更改为“TextBox”,它可以正常工作,但当然它是一个常规文本框,而不是我的修改版本。我是否需要以某种方式在代码隐藏中添加对类的引用?这是我第一次尝试以这种方式使用类,因为我从来不需要默认未提供的功能。