スタイルの基本的な部分のみを変更する必要があるTextBoxのカスタムサブクラスを作成しています。これで、サブクラス化するときに、通常は次のようにメタデータを変更することになっていることがわかりControl
ました...
public class EnhancedTextBox : TextBox
{
static EnhancedTextBox()
{
// Commenting this line out lets this use the default TextBox style.
DefaultStyleKeyProperty.OverrideMetadata(
typeof(EnhancedTextBox),
new FrameworkPropertyMetadata(typeof(EnhancedTextBox)));
}
}
これにより、そのサブクラスタイプに使用されるキーがタイプ自体に変更されます。つまり、デフォルトのTextBoxスタイルが取得されなくなります。大したことではありません...その行をコメント化するだけで、キーがTextBoxで直接使用される値に設定されているため、再び機能します。
ただし、スタイル全体ではなく、スタイルのいくつかを変更しBasedOn
たいのではないかと思います。新しいスタイルを作成してそのプロパティを設定するだけで済みます...しかし、そこに何を設定しますか?XAMLを手動で引き出して新しいスタイルを作成し、キーを指定してからStaticResourceを使用する必要はありませんが、そこに何を設定できるかはわかりません。'これはTextBoxに基づいています。スタイル。
シンプルなものを望んでいますが、やはり見つかりませんでした。誰か助けてもらえますか?