7

WPF と RibbonControlsLibrary について質問があります。このエラーの原因を自分で見つけようとしましたが、見つけられないようです。

Microsoft のWPF RibbonControlsLibraryを使用しています。RibbonToggleButton を使用すると、XAML コードにバインディングがなくても次のエラーが発生します。

<r:RibbonWindow x:Class="WpfApplication.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="300" Width="300"
    xmlns:r="clr-namespace:Microsoft.Windows.Controls.Ribbon;assembly=RibbonControlsLibrary">
    <r:Ribbon>
        <r:RibbonTab Header="Admin" >
            <r:RibbonMenuButton/>
        </r:RibbonTab>
    </r:Ribbon>
</r:RibbonWindow>

System.Windows.Data エラー: 39: BindingExpression パス エラー: 'IsChecked' プロパティが 'object' ''RibbonMenuButton' (Name='')' に見つかりません。BindingExpression:Path=IsChecked; DataItem='RibbonMenuButton' (Name=''); ターゲット要素は 'RibbonToggleButton' (Name='PART_ToggleButton') です。ターゲット プロパティは 'NoTarget' (タイプ 'Object') です

エラーの最後の部分に少し混乱しています: target element is RibbonToggleButton (Name='PART_ToggleButton'); target property is 'NoTarget' (type 'Object').There is no RibbonToggleButton in my XAML code at all?

他の誰かがそのような動作を見て、このエラー出力を取り除くために正しい方向に私を向けることができましたか?

4

2 に答える 2

7

リボントグルボタンのVS出力にそのエラーが表示されます。私はそれを解決しようとしましたが、運がありません。残念ながら、私が思いついた唯一の修正は、それが無視できるエラーの 1 つであるということです。

于 2012-05-05T13:35:15.517 に答える
1

MSDN のRibbonMenuButton クラスのドキュメントを見ると、PART_ToggleButton を TemplatePart 属性として使用していることがわかります。この記事では、TemplateParts のしくみについて説明します。これはコントロールに組み込まれているため、おそらく予期される動作です。

アップデート:

ここのコメントで、WPF チームに問題が通知されているようです。おそらく次のリリースで修正されるでしょう。

于 2012-05-05T14:28:53.910 に答える