0

monodroid 用のカスタム コントロールを作成しました。私のコントロールはIEnumerableをバインドしているため、チュートリアルN-20 CustomControlとこのMvxListViewに従ってください。私のコントロールは FrameLayout を継承します。次に、親クラスから Adapter プロパティにアクセスできません。

List バインディング プロパティを割り当てて RaisePropertyChanged イベントを呼び出したとき。上がらない。どうやってやるの?

前もって感謝します。

コードを表示するように編集

トークは安いです、私はコードを示しています。

これは、カスタム コントロールのヘッダーとバインディングのリストです。

    public class DrawingBoardControl : View
    {        

    private DrawingItems m_drawingItems;

    [MvxSetToNullAfterBinding]
    public DrawingItems CanvasItems
    {
        get
        {
            return m_drawingItems;
        }

        set
        {
            m_drawingItems = value;
            this.Update();
        }
    }
    ...

「DrawingItems」というクラスを使用していますが、

    public class DrawingItems : IEnumerable<IDrawingElement>
    {
    private List<IDrawingElement> myDrawingItems = new List<IDrawingElement>();

    public IEnumerator<IDrawingElement> GetEnumerator()
    {
        return myDrawingItems.GetEnumerator();
    }

    System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
    {
        return this.GetEnumerator();
    }

    public void Add(IDrawingElement element)
    {
        myDrawingItems.Add(element);
    }
  }

ただし、他のカスタム コントロールでは、IEnumerable と汎用の List を使用していますが、問題は解決しません。

ViewModel で RaisePropertyChanged を使用すると、Items プロパティが発生しません。

昨日は詳しい情報を含めなくてごめんなさい

4

1 に答える 1