or
If you need an example please let me know
private void SetMainGridColumns() |
{ |
for (int i = 0; i < this.radGridViewProductionList.Columns.Count; i++) |
{ |
this.radGridViewProductionList.Columns[i].IsVisible = false; |
} |
this.radGridViewProductionList.Columns["number"].IsVisible = true; |
this.radGridViewProductionList.Columns["number"].HeaderText = "Nr zamówienia"; |
this.radGridViewProductionList.Columns["numberCard"].IsVisible = true; |
this.radGridViewProductionList.Columns["numberCard"].HeaderText = "Nr karty"; |
this.radGridViewProductionList.Columns["ItemsFactoryCard"].IsVisible = true; |
this.radGridViewProductionList.Columns["ItemsFactoryCard"].HeaderText = "Produkt"; |
this.radGridViewProductionList.Columns["datePlannedRealisation"].IsVisible = true; |
this.radGridViewProductionList.Columns["datePlannedRealisation"].HeaderText = "Termin realizacji"; |
this.radGridViewProductionList.Columns.Add(new GridViewDataColumn(){UniqueName = "TimeRemaining", HeaderText = "Pozostało dni"}); |
this.radGridViewProductionList.Columns.Add(new GridViewDataColumn(){UniqueName = "Progres", HeaderText = "Postęp"}); |
this.radGridViewProductionList.MasterGridViewTemplate.AutoSizeColumnsMode = GridViewAutoSizeColumnsMode.Fill; |
} |
private void radGridViewProductionList_CellFormatting(object sender, CellFormattingEventArgs e) |
{ |
// exclude header element in the data column |
if (e.CellElement.ColumnInfo is GridViewDataColumn)// && !(e.CellElement.RowElement is GridHeaderRowElement)) |
{ |
GridViewDataColumn column = (GridViewDataColumn)e.CellElement.ColumnInfo; |
if (column.UniqueName == "TimeRemaining") |
{ |
// check if the progress bar is already added to the cell |
RadProgressBarElement element; |
if (e.CellElement.Children.Count > 0) |
{ |
//element = (RadProgressBarElement)e.CellElement.Children[0]; |
//this.SetValuesToElement(e.CellElement, element); |
return; |
} |
element = new RadProgressBarElement(); |
//int days = ((DateTime)e.CellElement.RowInfo.Cells["datePlannedRealisation"].Value - DateTime.Today).Days; |
int days = new Random().Next(0, 100); //tymczasowo, bo dane w bazie fikcyjne i wychodza glupoty |
element.Text = days + " dni"; |
element.Minimum = 0; |
element.Maximum = |
((DateTime) e.CellElement.RowInfo.Cells["datePlannedRealisation"].Value - |
(DateTime) e.CellElement.RowInfo.Cells["dateOrder"].Value).Days; |
//element.Value1 = days<0?0:days; |
element.Value1 = days > element.Maximum ? element.Maximum : days; |
element.Orientation = ProgressOrientation.Left; |
e.CellElement.Children.Add(element); |
element.StretchHorizontally = true; |
element.StretchVertically = true; |
} |
} |