/// <summary> /// 将为 ExecuteSelect(DataSourceSelectArguments) 操作请求的功能与指定的数据源视图所支持的功能进行比较。 /// </summary> /// <param name="view"></param> public void RaiseUnsupportedCapabilitiesError(DataSourceViewEx view) { DataSourceCapabilities capabilities = this.requestedCapabilities & ~this.supportedCapabilities; if ((capabilities & DataSourceCapabilities.Sort) != DataSourceCapabilities.None) view.RaiseUnsupportedCapabilityError(DataSourceCapabilities.Sort); if ((capabilities & DataSourceCapabilities.Page) != DataSourceCapabilities.None) view.RaiseUnsupportedCapabilityError(DataSourceCapabilities.Page); if ((capabilities & DataSourceCapabilities.RetrieveTotalRowCount) != DataSourceCapabilities.None) view.RaiseUnsupportedCapabilityError(DataSourceCapabilities.RetrieveTotalRowCount); }
DataSourceViewEx ConnectToDataSourceView() { if (!this.currentViewValid || base.DesignMode) { if (this.currentView != null) this.currentView.DataSourceViewChanged -= new EventHandler(this.OnDataSourceViewChanged); this.currentDataSource = this.GetDataSource(); string dataMember = this.DataMember; if (this.currentDataSource == null) { //this.OnBuildDataSource(EventArgs.Empty); this.currentDataSource = new ReadOnlyDataSourceEx(this.DataSource, dataMember); } this.currentDataSourceValid = true; DataSourceViewEx view = this.currentDataSource.GetView(dataMember); if (view == null) throw new InvalidOperationException("DataControl_ViewNotFound"); else { this.currentView = view; this.currentView.DataSourceViewChanged += new EventHandler(this.OnDataSourceViewChanged); this.currentViewValid = true; } } return this.currentView; }