問題タブ [controltemplate]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1242 参照

wpf - WPF-見た目のないコントロールのスタイリング:ControlTemplatesの第2レベルからコントロールの依存プロパティにアクセスする方法は?

いくつかの依存プロパティを追加したいので、 ItemsControl( )を拡張しています-コレクションにアイテムがない場合に表示されるようなものです(検索結果のitemscontrolで「検索語を入力して検索」ラベルを押すと考えてください) )。class EnhancedItemsControl : ItemsControlAlternativeContent

サブクラス化してdepItemsControlを追加しました。AlternativeContentそれへのタイプのプロパティFrameworkElement。ここで、Themes / Generic.xamlでデフォルトのスタイルを提供したいと思います(AsseblyInfoに追加し、この優れたチュートリアルThemeInfoAttributeで述べたように、静的costructorでメタデータを提供しました)。

スタイルには、が含まれており、 ItemsControlテンプレート内のControlTemplate2番目を使用する必要があります。ここに、を表示する必要があるを追加します。ControlTemplateContentPresenterAlternativeContent

さて、私の問題はContentPresenter、トップレベルからコンテンツを取得する必要があることをどのように伝えるEnhancedItemsControlかです。私がスタイルの中にいた場合ControlTemplate、私は使用します:

しかし、私はスタイルの内側ItemsControlにいるので、これは明らかに機能しません。親テンプレートではなく、祖父母テンプレートを参照する必要がありますが、パラメーターがありません。ControlTemplateControlTemplateTemplateBindingAncestorLevel

私も試しました:

しかし、その結果も空ContentPresenterになります。TemplatedParent(の外にあるため)名前を付けることがControlTemplateできないため、名前で参照することはできません。を使用することはできませんTemplatedParent RelativeBinding。これは、2つのレベルのコントロールテンプレートに到達しないためです。そしてRelativeSource FindAncestor奇妙なことに動作しません。

これを解決する方法はありますか?ありがとうございました!

Generic.xaml(抜粋):

制御コード:

使用法(aList<string>はとして提供されますDataContext):

0 投票する
2 に答える
532 参照

wpf - デフォルトのスタイル/コントロール テンプレートをオーバーライドすると、テーマが壊れますか?

"Edit a Copy" を使用して Blend で標準の WPF コントロールのデフォルトのスタイル/コントロールテンプレートを変更せずに (if のローカル コピーを作成するだけで)オーバーライドすると、一部のシナリオで既にテーマが壊れますか? 言い換えれば、異なるテーマは、標準コントロールに対して異なるコントロール テンプレートやスタイル定義を提供しますか? スタイル/コントロール テンプレートがテーマを尊重していることを確認するにはどうすればよいですか?

0 投票する
1 に答える
2251 参照

wpf - TreeViewの第2レベルのControlTemplate

2つのレベルを持つを作成しようとしてTreeViewいますが、どこにも行きません。私はItemTemplateSelector(これは機能します-以下にリストされている最初の2つのテンプレートのいずれかを選択します)を持っていますが、を使用して子にデータを入力させることができませんDataTemplate。これは私のコードです:

ポインタをありがとう。

0 投票する
2 に答える
10416 参照

wpf - Canvasをコントロールテンプレートに設定しますか?

ResourceDictionaryxamlファイルに次のようなCanvasがあります。

私のコードビハインドでは、このアイコンを使用してロードします

そして、これはうまくいきます。次に、テンプレートと同じアイコンを使用するボタンを作成します。そこで、コントロールテンプレートを作成します。

ここで問題があります。「アイコン」リソースキャンバスをコントロールテンプレートにどのように配置しますか?私の知る限り、CanvasにはStyleまたはTemplateプロパティがありません。Childrenプロパティがありますが、XAML経由でアクセスすることはできません。テンプレートでキャンバスを使用するにはどうすればよいですか?

0 投票する
2 に答える
7083 参照

c# - TabItem WPF のカスタマイズされたコンテンツ

現在、次のようなTabItemの一部として定義されているカスタム ヘッダーを持つカスタムがあります。Style

次に、コンテンツ領域のテンプレートを設定しTabItemます。これを行う方法がわかりません。<ControlTemplate>を含むContentTemplate を設定しようとしましたListBoxが、うまくいきませんでした。

では、コンテンツを制御するテンプレートを定義するにはどうすればよいでしょうか?

前もって感謝します

0 投票する
1 に答える
2762 参照

c# - コードからControlTemplateを見つける

このコードを含むxamlファイルがあります:

myControlTemplate別のUIオブジェクトを割り当てるために、コードビハインドから管理します。

使ってみましたがうまくいきFindResourceません。これどうやってするの?

0 投票する
1 に答える
14105 参照

wpf - WPF - スタイル内で ControlTemplate リソースを使用する

スタイルを作成するときに、ControlTemplate プロパティを以前に定義したリソースに設定することはできますか? たとえば、ResourceDictionary に次のものがあったとします。

そして後で、次のようなスタイルで使用したいと考えました。

それは可能ですか?

0 投票する
2 に答える
1204 参照

wpf - ControlTemplate を置き換えずに視覚状態を変更する方法は?

ToggleButton押されたボタンのデフォルトの外観ではなく、チェックされたときに(たとえば)赤い前景で表示される を定義したいと思います。

ToggleButton表示状態は、 内の名前付き要素として維持されていることがわかりますControlTemplate

テンプレート全体を再定義せずに、表示状態を置換/削除/カスタマイズする最も簡単な方法は何ですか?

0 投票する
1 に答える
1445 参照

wpf - Office2007スタイルのズームスライダーテンプレートを探しています

Office 2007スタイルのズームスライダーの優れたテンプレートを見た人はいますか?

この写真に示されているように、 代替テキストhttp://www.theexceladdict.com/images/zoom_controls_excel_2007_2003.jpg