아무도이 문제를 해결하지 못했거나 뭔가 누락되었다고 생각할 수 없습니다.ObjectDataProvider 사용
데이터를 검색하고 나머지 응용 프로그램 컨트롤에 제공하는 사용자 지정 DataSourceController가 있습니다. 당연히, 그것은 또한 내가 초기화하는 SQL 연결을 사용합니다.
내 응용 프로그램 코드 :
private ISQLConnection conn;
public ISQLConnection SqlConnection { get { return conn; } }
private DataSourceController dataSource;
public DataSourceController DataSource { get { return dataSource; } }
protected override void OnStartup(StartupEventArgs e) {
//-------------------------------------------------------
// Initialize connections
conn = new OracleSQLConnection("connectionStringHere");
//-------------------------------------------------------
// Initialize controllers
//dataSource = new DataSourceController(conn);
base.OnStartup(e);
}
가 지금은 XAML에서 ObjectDataProvider을 생성하고 컨트롤에 데이터 바인딩을 사용하려면 :
<ObjectDataProvider ObjectType="{x:Type data:DataSourceController}" x:Key="DataSource" MethodName="GetVenues" />
문제는 DataSourceController가없는 것입니다 매개 변수없는 생성자이며 OracleSQLConnection 객체가 전달되어야합니다 (내 App 코드 숨김의 공용 속성 임).
이 모든 것이 가능합니까? 또는 데이터 바인딩하려는 각 컨트롤에 대해 코드 내 DataContext 속성을 사용해야합니다.
감사합니다. Robert! 나는 이것을 시험해 보았다. 그런 다음 나는 더 이상 문제가없는 (관련없는) 문제가 있었지만 코드 내에서 init을 선택 해제 한 다음 객체를 내 윈도우의 DataContext로 설정해야했습니다. – Alexandra