4

機能を拡張したWPF TextBoxのクラスライブラリ(dllファイル)を作りたいです。しかし、TextBox のデフォルト スタイル (IsMouseOver プロパティ トリガー) の一部を変更したいと考えています。

新しい WPF ユーザー コントロール ライブラリ プロジェクトを作成し、そこから生成された .XAML ファイルと .cs ファイルを削除し、新しいクラス ファイルを追加しました。次に、TextBox クラスから派生しましたが、スタイル XAML にアクセスする方法がわかりません。

これがどのように行われるのかわかりません..

私のプロジェクト内には、現在、この .cs ファイルのみがあり、.XAML ファイルはありません。

namespace CustomControls
{
    public class CustomTextBox : TextBox
    {
        private string customProperty;
        public string CustomProperty
        {
            get { return customProperty; }
            set { customProperty = value; }
        }
    }
}
4

1 に答える 1

9

このようなことができます

<TextBox x:Class="CustomControls.MyFolder.CustomTextBox"
         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

</TextBox>

コードビハインド

public partial class CustomTextBox : TextBox
{
    public CustomTextBox()
    {
        InitializeComponent();
    }
}

これで、xaml でやりたいこと (テンプレートの編集、スタイルの適用など) を行うことができ、コード ビハインドからアクセスできるようになります。

于 2016-10-27T15:16:38.023 に答える