0

我正在尝试向我的应用程序中的文本框添加几个自定义属性,它将帮助我大大减少所需的代码行数..

用于添加属性的 C# 代码

class HorizonTextBoxExt:TextBox
{
    public HorizonTextBoxExt() : base() { }

    public bool BoundToDataGrid
    {
        get { return (bool)this.GetValue(BoundToDataGridProperty); }
        set { this.SetValue(BoundToDataGridProperty, value); }
    }

    public static readonly DependencyProperty BoundToDataGridProperty =
    DependencyProperty.Register(
    "BoundToDataGrid",
    typeof(bool),
    typeof(HorizonTextBoxExt),
    new UIPropertyMetadata(false)
    );
}

“错误 3 在 Horizo​​nTextBoxExt 类型中找不到可附加属性 'BoundToDataGrid'。

是我在 wpf 设计器的 xaml 风中遇到的错误

    <Window x:Class="WpfApplication7.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:Local ="clr-namespace:WpfApplication7"
            Title="MainWindow" Height="350" Width="525">
            <Grid>
                <TextBox HorizontalAlignment="Left" Height="63" Margin="90,47,0,0"       TextWrapping="Wrap" Text="TextBox" VerticalAlignment="Top" Width="225" Local:HorizonTextBoxExt.BoundToDataGrid="true" />

           </Grid>
     </Window>
4

1 回答 1

3

替换这个:

<Grid>
    <TextBox /* ... */ Local:HorizonTextBoxExt.BoundToDataGrid="true" />

</Grid>

有了这个:

<Grid>
    <Local:HorizonTextBoxExt /* ... */ BoundToDataGrid="true" />

</Grid>
于 2013-01-14T09:51:38.087 回答