private void bindingSource1_AddingNew(object sender, AddingNewEventArgs e) { int columnindex = 0; int colindex = 0; DataView view = this.bindingSource1.List as DataView; DataRowView rowview = view.AddNew(); colindex = 1 + (view.Table.Compute("max(ColIndex)", string.Empty) == DBNull.Value ? 0 : Convert.ToInt32(view.Table.Compute("max(ColIndex)", string.Empty))); if (this._Instance is KzxGridControl) { columnindex = (KzxGridControl.ColumnCount++); } else if (this._Instance is KzxTreeList) { columnindex = (KzxTreeList.ColumnCount++); } rowview["ColIndex"] = colindex; rowview["Key"] = "column" + view.Count.ToString(); rowview["Field"] = string.Empty; rowview["MessageCode"] = "0"; rowview["DesigeCaption"] = "显示标题" + columnindex.ToString(); rowview["ColumnType"] = ColumnType.Text.ToString(); rowview["SourceTable"] = string.Empty; rowview["DisplayMemberPath"] = string.Empty; rowview["SelectedValuePath"] = string.Empty; rowview["MaxLength"] = 0; rowview["PasswordChar"] = string.Empty; rowview["ReadOnly"] = false; rowview["IsNull"] = true; rowview["IsUnique"] = false; rowview["Enabled"] = true; rowview["Visible"] = true; rowview["ValidateGroup"] = string.Empty; rowview["FieldCaption"] = string.Empty; rowview["Fixed"] = DevExpress.XtraGrid.Columns.FixedStyle.None.ToString(); rowview["ParentField"] = string.Empty; rowview["ValueDependencyField"] = string.Empty; rowview["Width"] = 50; rowview["AllowValueRange"] = false; rowview["DataType"] = KzxDataType.Str.ToString(); rowview["MaxValue"] = string.Empty; rowview["MinValue"] = string.Empty; rowview["RegexString"] = string.Empty; rowview["ToolTipMessageCode"] = string.Empty; rowview["ToolTipText"] = string.Empty; e.NewObject = rowview; XmlRow xmlrow = XmlRow.Converter(rowview); this.propertyGrid1.SelectedObject = xmlrow; }
private void bindingSource1_PositionChanged(object sender, EventArgs e) { if (this.bindingSource1.Position >= 0) { DataRowView row = this.bindingSource1.Current as DataRowView; XmlRow xmlrow = XmlRow.Converter(row); this.propertyGrid1.SelectedObject = xmlrow; } else { this.propertyGrid1.SelectedObject = null; } }
private void bindingSource1_ListChanged(object sender, ListChangedEventArgs e) { DataRowView rowview = null; if (e.ListChangedType == ListChangedType.ItemDeleted) { for (int i = 0; i < this.bindingSource1.Count; i++) { rowview = this.bindingSource1[i] as DataRowView; if (rowview != null) { rowview["ColIndex"] = i + 1; } } if (this.bindingSource1.Current != null) { rowview = this.bindingSource1.Current as DataRowView; XmlRow xmlrow = XmlRow.Converter(rowview); this.propertyGrid1.SelectedObject = xmlrow; } } }
public XmlDocument ToXml() { if (Data != null) { int BeginIndex = (Convert.ToInt32(HttpContext.Current.Request.Form["PageSize"]) * Convert.ToInt32(HttpContext.Current.Request.Form["PageIndex"])); BeginIndex++; XmlDocument xmldoc = new XmlDocument(); xmldoc.AppendChild(xmldoc.CreateXmlDeclaration("1.0", "utf-8", null)); XmlElement DatasetRoot = xmldoc.CreateElement("dataset"); XmlElement XmlRow, XmlCol; XmlAttribute attr; attr = xmldoc.CreateAttribute("name"); if (!string.IsNullOrEmpty(this.Title)) { attr.Value = HttpUtility.HtmlEncode(this.Title); DatasetRoot.Attributes.Append(attr); } attr = xmldoc.CreateAttribute("index"); attr.Value = HttpContext.Current.Request.Form["PageIndex"]; DatasetRoot.Attributes.Append(attr); attr = xmldoc.CreateAttribute("total"); attr.Value = TotalRecords.ToString(); DatasetRoot.Attributes.Append(attr); StringBuilder sb = new StringBuilder(); var items = (IEnumerable)Data; if (Columns.Count == 0) { GenerateColumns(); } if (EnableRowNo) { Columns.Insert(0, new GridColumn { BindRow = "RowNo", EnableSort = false, Name = "" }); } XmlCDataSection cda; foreach (var row in items) { DataBindRow RowData = new DataBindRow(row); XmlRow = xmldoc.CreateElement("row"); foreach (var col in Columns) { XmlCol = xmldoc.CreateElement("col"); attr = xmldoc.CreateAttribute("name"); attr.Value = col.Name; XmlCol.Attributes.Append(attr); attr = xmldoc.CreateAttribute("field"); attr.Value = col.BindRow; XmlCol.Attributes.Append(attr); var value = RowData[col.BindRow]; cda = xmldoc.CreateCDataSection(col.ToString(RowData, value)); XmlCol.AppendChild(cda); if (col.BindRow == "RowNo") { attr = xmldoc.CreateAttribute("no"); attr.Value = BeginIndex.ToString(); XmlRow.Attributes.Append(attr); BeginIndex++; } XmlRow.AppendChild(XmlCol); } DatasetRoot.AppendChild(XmlRow); } xmldoc.AppendChild(DatasetRoot); return(xmldoc); } else { return(new XmlDocument()); } }