문제

사용자가 만든 제어에서 데이터 바인딩을 올바르게 구현하는 방법에 대한 정보를 찾고 있습니다.

USERCONTROL에는 TextBox, 버튼 및 MonthCalendar가 포함되어 있습니다. 사용자 컨트롤 내부의 TextBox에 데이터베이션을 할 수는 있지만 USERCONTROL 자체에서 데이터베이닝을 구현하고 컨트롤 내부의 텍스트 상자를 참조하지 않으려 고합니다.

다음과 같이 부동산을 설정하려고 시도했습니다.

  <System.ComponentModel.Bindable(True)> _
Public Property BoundDate() As DateTime
    Get
      Return _currentSelectedDate
    End Get
    Set(ByVal value As DateTime)
      SetDateTime(value, True)
    End Set
  End Property

그러나 제어에 바인딩 소스를 추가하면 필드가 데이터로 채워지지 않으며 비어 있습니다. 나중에 데이터를 나타 내기 위해 무언가를해야합니까?

누구든지 나를 좋은 튜토리얼로 안내하거나 가능하면 여기에서 설명 할 수 있습니까? 이 프로젝트는 vb.net으로 작성되었습니다.

편집하다: DefaultBindingPropertyAttribute를 구현하고 있습니다

도움이 되었습니까?

해결책

이 시점에서 텍스트 상자는 무엇입니까? 다음을 제안합니다.

  1. 사용자 제어 부하 이벤트에서 텍스트 상자를 개인 멤버 변수에 선언적으로 바인딩합니다.
  2. BoundDate 속성 업데이트 _BoundDate에 세터를 설정해야합니다

내가 직접 보지 않았지만 이것은 꽤 좋은 읽기처럼 보입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top