問題があります。Silverlight:汎用コンポーネントのバインドコマンド
私はアプリケーションで使用する汎用コンテナを作成しました。 このコンテナは、現在は2つのプロパティ(コンテンツとボタンアクション)をエクスポートします。
問題は私がアクションをバインドできないことです。
汎用コンテナがボタンを持っている:私の背後にあるコードで
<HyperlinkButton x:Name="expandButton" Width="16">
ICommandのプロパティをエクスポートします。私はそれを使用するためにトライする場合、
public ICommand ExpandCommand
{
get { return Click.GetCommand(expandButton); }
set { Click.SetCommand(expandButton, value); }
}
そして:
<abo:DashBoardPanel Margin="10" Grid.Row="1" Title="Command Panel"
DataContext="{Binding Commands}"
ExpandCommand="{Binding test}"
>
コンポーネント(ジェネリックコンテナを使用するコンポーネント)に次の例外の発生が割り当てられた場合:
{System.ArgumentExceptionの国連oggettoジTIPO 非PUO ESSERE convertito NEL TIPO 'System.Windows.Data.Binding 'System.Windows.Input.ICommand'。 SU System.RuntimeType.TryChangeType(Object値、バインダーバインダー、 CultureInfoカルチャ、ブールneedsSpecialCast)SU System.RuntimeType.CheckValue(Object値、バインダーバインダー、のCultureInfo 培養、のBindingFlags invokeAttr)SU System.Reflection.MethodBase。 CheckArguments(オブジェクト[]パラメータ、 バインダーバインダー、のBindingFlags invokeAttr、CultureInfoカルチャ、署名 SIG)SU System.Reflection.RuntimeMethodInfo.Invoke(オブジェクトobj、 のBindingFlags invokeAttr、バインダーバインダー、オブジェクト[]パラメータ、 CultureInfoカルチャ、ブールスキップ可能性チェック)su System.Reflection.RuntimeMethodInfo.Invoke(Object obj、BindingFlags invokeAttr、バインダーバインダー、オブジェクト[]パラメーターERS、CultureInfoカルチャ)
SU System.Reflection.RuntimePropertyInfo.SetValue(オブジェクトobj、 値、のBindingFlags invokeAttr、バインダーバインダーオブジェクト、[]のインデックス、 CultureInfoカルチャ)SU System.Reflection.RuntimePropertyInfo.SetValue(対象物OBJオブジェクト、 値オブジェクト、SU MS.Internal.XamlMemberInfo.SetValue(オブジェクトターゲットオブジェクト値)SU MS.Internal.XamlManagedRuntimeRPInvokes.SetValue(XamlTypeToken INTYPE、 XamlQualifiedObject & inObj、XamlPropertyToken inProperty、 XamlQualifiedObject &)[]のインデックスオブジェクトinValue)}
(それはイタリア語です..翻訳は型 『System.Windows.Data.Binding』のオブジェクト」のようなものが 『System.Windows.Input.ICommand』に変換することができない場合)
任意のアイデア?
ありがとうございます。 Francesco
ありがとうございました。できます!私は依存性プロパティを登録する必要があると思ったのは、UIをモデルで更新したままにしたい場合だけでした – Francesco