2

ユーザーが有効なドラッグドロップを作成しようとしているかどうかを検証できるようにしたいと考えており、これを宛先のCompartmentShapeの色で示しています。次のことを行ったので、正しく検証できます。更新する必要があります。 UI

    public override void OnDragDrop(DslDiagrams.DiagramDragEventArgs e)
    {
        BCSDataSourceTypes dataSourceType = GetDataSourceType(e.Data);

        if (dataSourceType == BCSDataSourceTypes.Unknown)
        {
            return;
        }

        FieldInfo info = e.Data.GetType().GetField("innerData", BindingFlags.NonPublic | BindingFlags.Instance);
        object obj = info.GetValue(e.Data);
        info = obj.GetType().GetField("innerData", BindingFlags.NonPublic | BindingFlags.Instance);
        System.Windows.DataObject dataObj = info.GetValue(obj) as System.Windows.DataObject;

        if (dataObj != null)
        {
            SqlStoredProcedure storedProcedure = dataObj.GetData(typeof(SqlStoredProcedure)) as SqlStoredProcedure;
            if (storedProcedure != null)
            {
                MessageBox.Show(string.Format("{0} is valid here", storedProcedure.Name));
            }
        }

        e.Handled = true;
    }

私の問題は、アウトラインの色を参照できないことです。助けていただければ幸いです。

4

1 に答える 1

2

露出したプロパティを追加する必要があります(図形を右クリックして[露出を追加]を選択します)

よろしくお願いします

于 2011-01-06T18:19:23.947 に答える