0

这一切都始于尝试拥有一个数字文本框。那部分无关紧要,但这就是我创建以下课程的原因。(顺便说一句,使用 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”,它可以正常工作,但当然它是一个常规文本框,而不是我的修改版本。我是否需要以某种方式在代码隐藏中添加对类的引用?这是我第一次尝试以这种方式使用类,因为我从来不需要默认未提供的功能。

4

1 回答 1

1

问题是您使用 Name 作为依赖属性,您需要使用 x:Name="txtBox_heightft" 作为扩展属性:)

于 2013-02-13T10:25:28.913 回答