gridview¿Ø¼þÓ÷¨½éÉÜ ÏÂÔØ±¾ÎÄ

if (!grid.IsEditing && e.RowType == DevExpress.Web.ASPxGridView.GridViewRowType.Data) {

// ²Ù×÷ Label ¿Ø¼þ

Label label = grid.FindRowCellTemplateControl(e.VisibleIndex, null, \ent\as Label;

decimal change = (decimal)grid.GetRowValues(e.VisibleIndex, \ label.Text = string.Format(\change); // ²Ù×÷ Image ¿Ø¼þ

System.Web.UI.WebControls.Image img = (System.Web.UI.WebControls.Image)grid.FindRowCellTemplateControl(e.VisibleIndex, null, \ img.Visible = false; if(change != 0) {

img.Visible = true;

img.ImageUrl = change < 0 ? \: \\

label.ForeColor = change < 0 ? Color.Red : Color.Green; } } }

×¢£ºÄ£°åÁÐÖеÄʼþÈçºÎд£¿ÊÖ¹¤Ð´Ê¼þ£¬Èçbtn.OnClick += ...; ×¢£ºÊÓͼģ°åÇë²Î¿¼Îĵµ¡¶ASPxGridView.Templates¡·

ASPxGridView ʼþ

RowCreated£¨´´½¨ÐÐÊý¾Ýʱ´¥·¢£¬ÀàËÆ GridView µÄ DataItemCreate ʼþ£©

protected void grid_HtmlRowCreated(object sender, DevExpress.Web.ASPxGridView.ASPxGridViewTableRowEventArgs e) {

if(e.RowType != DevExpress.Web.ASPxGridView.GridViewRowType.Data) return; // ÉèÖÃÄ£°åÁÐlable¿Ø¼þÖµ

Label label = grid.FindRowCellTemplateControl(e.VisibleIndex, null, \\as Label;

decimal change = (decimal)grid.GetRowValues(e.VisibleIndex, \ label.Text = string.Format(\change); // ÉèÖÃÄ£°åÁÐimage¿Ø¼þµÄͼÏñ

System.Web.UI.WebControls.Image img = (System.Web.UI.WebControls.Image)grid.FindRowCellTemplateControl(e.VisibleIndex, null, \

img.Visible = false; if(change != 0) { img.Visible = true;

img.ImageUrl = change < 0 ? \: \ label.ForeColor = change < 0 ? Color.Red : Color.Green; } }

HtmlRowPrepared£¨ÐÐ×¼±¸£¿¿ÉÔÚ´ËÉèÖÃÐеÄչʾЧ¹û£¬Èç±³¾°£©

protected void grid_HtmlRowPrepared(object sender, ASPxGridViewTableRowEventArgs e) {

bool hasError = e.GetValue(\<= 1; hasError = hasError || e.GetValue(\<= 1; hasError = hasError || !e.GetValue(\ hasError = hasError || (int)e.GetValue(\< 18; DateTime arrival = (DateTime)e.GetValue(\

hasError = hasError || DateTime.Today.Year != arrival.Year || DateTime.Today.Month != arrival.Month; if(hasError) {

e.Row.ForeColor = System.Drawing.Color.Red; } }

UnboundColumnData £¨·Ç°ó¶¨ÁÐÊý¾ÝÌî³ä£©

protected void grid_CustomUnboundColumnData(object sender, DevExpress.Web.ASPxGridView.ASPxGridViewColumnDataEventArgs e) {

if(e.Column.FieldName == \ {

decimal price = (decimal)e.GetListSourceFieldValue(\ int quantity = Convert.ToInt32(e.GetListSourceFieldValue(\ e.Value = price * quantity; } }

CustomColumnDisplayText£¨¶¨ÖÆÁÐÎı¾Õ¹Ê¾£©

protected void grid_CustomColumnDisplayText(object sender, DevExpress.Web.ASPxGridView.ASPxGridViewColumnDisplayTextEventArgs e) {

if(object.Equals(e.Column, grid.Columns[\

e.DisplayText = GetSizeDisplayText(e.Value); }

SummaryDisplayText£¨ºÏ¼ÆÐÐÎı¾Õ¹Ê¾£©

protected void grid_SummaryDisplayText(object sender, DevExpress.Web.ASPxGridView.ASPxGridViewSummaryDisplayTextEventArgs e) { if(e.Item.FieldName == \{ e.Text = GetSizeDisplayText(e.Value); } }

HeaderFilterFillItems£¨×Ô¶¨Òå¹ýÂËÆ÷´¦ÀíÂß¼­£©

protected void grid_HeaderFilterFillItems(object sender, ASPxGridViewHeaderFilterEventArgs e) {

if(object.Equals(e.Column, grid.Columns[\{ PrepareTotalFilterItems(e); return; }

if(object.Equals(e.Column, grid.Columns[\{ PrepareQuantityFilterItems(e); return; } }

--------------------------------------------------------- »Øµ÷´¦Àí

--------------------------------------------------------- CustomCallback£¨Ajax »Øµ÷´¦Àí£©

protected void grid_CustomCallback(object sender, ASPxGridViewCustomCallbackEventArgs e) {

int layoutIndex = -1;

if(int.TryParse(e.Parameters, out layoutIndex)) ApplyLayout(layoutIndex); // ¸ü»»²¼¾Ö }

CustomButtonCallback£¨¶¨Öư´Å¥µÄajax»Øµ÷´¦Àí£©

protected void grid_CustomButtonCallback(object sender, ASPxGridViewCustomButtonCallbackEventArgs e) {

if(e.ButtonID != \return; copiedValues = new Hashtable();

foreach(string fieldName in copiedFields)

copiedValues[fieldName] = grid.GetRowValues(e.VisibleIndex, fieldName);

grid.AddNewRow(); }

--------------------------------------------------------- ±à¼­ÊÓͼ

--------------------------------------------------------- InitNewRow£¨Ð½¨ÐеÄÊý¾Ý³õʼ»¯´¦Àí£©

protected void grid_InitNewRow(object sender, DevExpress.Web.Data.ASPxDataInitNewRowEventArgs e) {

if(copiedValues == null) return;

foreach(string fieldName in copiedFields) {

e.NewValues[fieldName] = copiedValues[fieldName]; } }

CellEditorInitialize£¨±à¼­Æ÷³õʼ»¯£©

protected void grid_CellEditorInitialize(object sender, ASPxGridViewEditorEventArgs e) {

if(grid.IsEditing && !grid.IsNewRowEditing && e.Column.FieldName == \ {

string country = (string)grid.GetRowValuesByKeyValue(e.KeyValue, \ ASPxComboBox combo = e.Editor as ASPxComboBox; FillCityCombo(combo, country);

combo.Callback += new CallbackEventHandlerBase(cmbCity_OnCallback); } }

StartRowEditing£¨¿ªÊ¼±à¼­£©

protected void grid_StartRowEditing(object sender, DevExpress.Web.Data.ASPxStartR