1

Silverlight で作成したユーザー コントロールに問題があります。問題は、ユーザー コントロールのクラスにプロパティを追加public Guid ApplicationIdし、ページで何らかの値にバインドしたいことです。これを実行しようとすると、「プロパティ 'ApplicationId' がタイプ 'ParameterEditor' に見つかりませんでした」というメッセージが表示されParameterEditor、ユーザー コントロールはどこにありますか。

問題のコード。ユーザーコントロールで:

    public ParameterEditor()
    {
        InitializeComponent();
        SetParametersForEdit();
    }

    public Guid ApplicationId
    {
        get { return (Guid)GetValue(ApplicationGUID); }
        set
        {
            if (ApplicationId == value) return;
            SetValue(ApplicationGUID, value);
        }
    }

そして、このコントロールを表示したいページの XAML には、次のようなものがあります。

<vbView:ParameterEditor x:Name="paramConfig" Grid.Row="3" Grid.Column="2"
                       DataContext="{Binding SelectedRoute}"
                       ApplicationId="{Binding ApplicationId}"
                        />

そして、ApplicationIdページの .cs ファイルにあります。問題は、他のコントロールでこのことを行ったことがあり、正常に動作することです。正直なところ、なぜこれがここで起こっているのかわかりません。


DependencyProperty意味:

public static readonly DependencyProperty ApplicationGUID = DependencyProperty.Register(
        "Application GUID", typeof(Guid), typeof(ParameterEditor),
        new PropertyMetadata((source, _) => ((ParameterEditor)source).SetInitialGuid()));

    private void SetInitialGuid()
    {
        ApplicationId = Guid.Empty;
    }
4

0 に答える 0