問題タブ [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.
silverlight - ControlTemplateで使用されるValueConverterをパラメーター化するための良い方法は何ですか?
私が取り組んでいるテンプレート化されたコントロールは、次のようなValueConverterを使用します。
これは、generic.xamlで提供するデフォルトの外観です。このコントロールを使用するときは、さまざまな形式の文字列をコンバーターに渡したいと思います。完全なControlTemplateを提供せずにそれを実現する方法はありますか?
私が最初に考えたのは、コントロールのプロパティにTemplateBindingを指定してConverterParameterを使用できるということでしたが、ConverterParametersをバインドできないことがわかりました。別のオプションは、ConvertToメソッドからコントロールにアクセスし、そのプロパティをピックオフすることです。どうすればいいのかわかりません。使用するたびにコントロールを完全に再テンプレート化する必要をなくすオプションは役に立ちます(Xamlがたくさんあります)。
wpf - WPFで、ItemsControlControlTemplateでイベントを処理するにはどうすればよいですか
ItemsControlControlTemplate内のイベントを処理しようとしています。ボタンのMouseUpイベントとMouseDownイベントを割り当てました(右下のbtnRight)。問題は、ボタンをクリックしても、イベントがコードビハインドに到達しないことです。ControlTemplatesのイベントはどのように機能し、これを接続するには何をする必要がありますか?OnApplyTemplateイベント中に、コードビハインドでボタンにイベントを割り当てようとしましたが、役に立ちませんでした。
ご協力いただきありがとうございます!
silverlight - 一貫性のないバインディング結果が得られるのはなぜですか
トグルボタン付きのコントロールテンプレートがあります。このToggleButtonには、依存関係プロパティにバインドされた一方向のIsCheckedプロパティがあります。依存関係プロパティを明示的に設定すると、バインディングが機能します。
問題は、UIのトグルボタンを操作した後、依存関係プロパティを明示的に設定した場合、バインディングがIsCheckedプロパティを更新しないことです。
正常に機能するTwoWayバインディングを使用した回避策があります。私の質問は、なぜそれがこのように動作するのですか?私は何かが足りないのですか?Silverlightのバインディングメカニズムにバグはありますか?
スニペットを含めるための編集:
ControlTemplateのバインディングは次のようになります(TemplateBindingに置き換えることができます)
依存関係プロパティの明示的な設定は、かなり独創的な標準です。
wpf - WPFでControlTemplateを部分的に適用できますか?
WPFに関しては、私はかなり環境に配慮しているので、これが明らかな質問である場合はご容赦ください。
Divelements SandRibbonライブラリを使用している既存のコードベースを変更しようとしていますが、GalleryButtonコントロールが希望どおりに動作しないことがわかりました。私がやりたいのは、GalleryButtonが画像とラベルを配置する方法を変更することですが、マウスオーバーなどのすべてのトリガーのデフォルトの「ルック」を維持します。
ControlTemplateをコントロールの一部に適用することはできますが、他の部分には適用できませんか?GalleryButtonがその「Image」および「Text」プロパティをデフォルトとは異なる方法で表示するように指定したいのですが、他には何も触れません。
wpf - wpfエラーテンプレート-エキスパンダーが折りたたまれても赤いボックスが表示されます
エキスパンダー内にあるTextBoxのデータソースで検証を行っていますが、検証エラーがトリガーされると、エキスパンダーを折りたたむと、赤いボックスがTextBoxのある場所にとどまることがわかりました。
エラーテンプレートの可視性をエキスパンダーにバインドすることでこれを回避しようとしましたが、バインドに問題があると思います。
バインディングが間違っていると思いますが、誰かが私を軌道に戻すことができますか?あるいは、エキスパンダーの折りたたみ時にまだ表示されているErrorTemplateの別の解決策を知っている人はいますか?
wpf - WPFはコードビハインドから名前付きスタイル要素を設定しますか?
ControlTemplate セクションを含むスタイルで、ボタンにスタイルを適用するユーザー コントロールがあります。ControlTemplate 内には、Ellipse や Path などのさまざまな UI 要素があります。
これらの要素 (Ellipse と Path) に x:Name という名前を付けた場合、コード ビハインドからそれらにアクセスできますか?
コンパイル エラー (C#) が発生するため、スタイルの楕円とパスが表示されないようです。
私はこれについて間違った方法で進んでいますか?
wpf - Style.Triggers からコントロール テンプレートを変更する方法
私はこのようにしました:
これを行うより良い方法はありますか?コントロール テンプレートにさらに多くのコード行が含まれているシナリオがあり、BorderBrush などの単一のスタイルのみを変更する必要があります。コントロール テンプレートを Style.Triggers から効率的に変更するにはどうすればよいですか?
wpf - WPF-ControlTemplateのMultiTrigger、奇妙な動作
さて、私は最近WPFをあまり行っていませんが、これは私を混乱させます。
をStyle
定義しました。RadioButton
これは、を使用しControlTemplate
ますMultiTrigger
。Border
要点は、マウスをその上に置いたとき、またはそれIsChecked
が真のときに、を不透明にしたいということです。
だから私は、2つの条件で動作するインとアウトMultiTrigger
をアニメーション化するを持っています。は偽であり、真です。その後、さらに3つのトリガーがあります。1つのセットは、マウスがその上にあるときにカーソルを渡します。別のセットは、falseの場合は境界線の不透明度を0に設定し、trueの場合は不透明度を1に設定する最後のセットです。Opacity
IsChecked
IsMouseOver
IsChecked
IsChecked
私の問題は、その最後のトリガーが期待どおりに機能しないことです。チェックされRadioButton
ているは条件を満たさなくなったMultiTrigger
ため、アニメーションは発生しませんが、クリックすると境界線の不透明度が0に戻ります。
MultiTrigger
コメントアウトすると他のトリガーが機能するため、何かをうまく処理する必要があります。
のコードStyle
は以下のとおりです-
クリックすると境界線がフェードアウトする理由がよくわかりません。
いつものように、どんな助けでも大歓迎です。
編集:人々が助けやすいように、Kaxamlフレンドリーなスニペットを含めました。このコードをに貼り付けるだけです。
wpf - WPF で Style を拡張するのと同じ方法で ControlTemplate を拡張することは可能ですか?
つまり、私たちが設計している新しいボタンの外観の最も基本的なものを定義するメインの ControlTemplate があるということです。しかし、このボタンに別の 3 つのコントロール テンプレートを作成して、それらに異なる色を設定できるようにしたいと考えています。ただし、メインの ControlTemplate をコピーして貼り付けて色を変更したくはありません。代わりに、そこから「継承」して (Style の BasedOn プロパティのように)、継承された ControlTemplate の色を変更します。
これは可能ですか?
ありがとう!
.net - WPFの既存のコントロールのControlTemplate
XAML形式(ビジュアルツリー)のWPFで既存のコントロールのControlTemplateを取得するにはどうすればよいですか?これは、既存のテンプレートを使用して新しいControlTemplateを作成するのに役立ちます。