Anonymous
Невозможно получить правозащитный вид сетки.
Сообщение
Anonymous » 12 фев 2025, 12:29
Как указано в заголовке, я не смог правой выравнивать свои столбцы представления сетки DeVexPress после того, как я назначил значения строкам, особенно столбцы со значением 0, присвоенными ему. (Показано ниже)
Код: Выделить всё
public DataTable CalculateMasterFields(DataTable masterTable, string fileFormat)
{
DataTable masterFields = masterTable.Clone();
foreach (DataRow row in masterTable.Rows)
{
masterFields.ImportRow(row);
}
decimal finalTotalRow = row["FinalTotal"] == DBNull.Value ? 0m : Math.Round(Convert.ToDecimal(row["FinalTotal"]), 2);
bool voided = row["Cancelled"] == DBNull.Value ? false : Converter.TextToBoolean(row["Cancelled"]);
decimal finalTotal = voided ? 0m : Math.Round(finalTotalRow, 2);
decimal voidedAmt = voided ? Math.Round(finalTotalRow, 2) : 0;
bool refund = (!voided && finalTotal
и ниже, как я инициирую и создаю столбцы сетки: < /p>
[b] Как я создаю свой Сетевые столбцы [/b]
private void btnSearch_Click(object sender, EventArgs e)
{
myMasterTable = myListing.CalculateMasterFields(mySalesListingTable, myFileFormat);
myDetailTable = myListing.CalculateDetailFields(mySalesListingDetailTable, myFileFormat);
// Create DataRelation for Master-Detail1 if detail table has rows
if (mySalesListingDetailTable.Rows.Count > 0)
{
DataSet dataSet = new DataSet();
dataSet.Tables.Add(myMasterTable);
dataSet.Tables.Add(myDetailTable);
dataSet.Relations.Add("MasterDetailRelation1",
myMasterTable.Columns["DocNo"],
myDetailTable.Columns["DocNo"]);
gridControl1.DataSource = dataSet.Tables[0];
gridControl1.LevelTree.Nodes.Add("MasterDetailRelation1", gvDetail);
AlignGridColumns();
gvDailySales.OptionsDetail.ShowDetailTabs = false;
}
else
{
gridControl1.DataSource = myMasterTable;
AlignGridColumns();
}
}
private void CreateGridColumn(string caption, string fieldName, bool isVisible, bool isMaster)
{
GridColumn gridColumn = new GridColumn();
gridColumn.FieldName = fieldName;
gridColumn.Caption = caption;
gridColumn.AppearanceCell.Font = new System.Drawing.Font("Tahoma", 9.75F);
gridColumn.AppearanceCell.Options.UseFont = true;
gridColumn.AppearanceHeader.Font = new System.Drawing.Font("Tahoma", 9.75F, System.Drawing.FontStyle.Bold);
gridColumn.AppearanceHeader.Options.UseFont = true;
gridColumn.OptionsColumn.AllowEdit = false;
gridColumn.Visible = isVisible;
if (isMaster)
{
if (gvDailySales.Columns.ColumnByName(fieldName) == null)
gvDailySales.Columns.Add(gridColumn);
}
else
{
if (gvDetail.Columns.ColumnByName(fieldName) == null)
gvDetail.Columns.Add(gridColumn);
}
}
private void CreateMasterTableColumns(string myFileFormat)
{
CreateMasterColumns(CreateGridColumn);
CreateDetailColumns(CreateGridColumn);
}
< /code>
оценил бы любую помощь или советы. Заранее спасибо!
Подробнее здесь: [url]https://stackoverflow.com/questions/79432532/unable-to-right-align-devexpress-grid-view-columns-after-assigning-values-from-d[/url]
1739352551
Anonymous
Как указано в заголовке, я не смог правой выравнивать свои столбцы представления сетки DeVexPress после того, как я назначил значения строкам, особенно столбцы со значением 0, присвоенными ему. (Показано ниже)[code]public DataTable CalculateMasterFields(DataTable masterTable, string fileFormat) { DataTable masterFields = masterTable.Clone(); foreach (DataRow row in masterTable.Rows) { masterFields.ImportRow(row); } decimal finalTotalRow = row["FinalTotal"] == DBNull.Value ? 0m : Math.Round(Convert.ToDecimal(row["FinalTotal"]), 2); bool voided = row["Cancelled"] == DBNull.Value ? false : Converter.TextToBoolean(row["Cancelled"]); decimal finalTotal = voided ? 0m : Math.Round(finalTotalRow, 2); decimal voidedAmt = voided ? Math.Round(finalTotalRow, 2) : 0; bool refund = (!voided && finalTotal и ниже, как я инициирую и создаю столбцы сетки: < /p> [b] Как я создаю свой Сетевые столбцы [/b] private void btnSearch_Click(object sender, EventArgs e) { myMasterTable = myListing.CalculateMasterFields(mySalesListingTable, myFileFormat); myDetailTable = myListing.CalculateDetailFields(mySalesListingDetailTable, myFileFormat); // Create DataRelation for Master-Detail1 if detail table has rows if (mySalesListingDetailTable.Rows.Count > 0) { DataSet dataSet = new DataSet(); dataSet.Tables.Add(myMasterTable); dataSet.Tables.Add(myDetailTable); dataSet.Relations.Add("MasterDetailRelation1", myMasterTable.Columns["DocNo"], myDetailTable.Columns["DocNo"]); gridControl1.DataSource = dataSet.Tables[0]; gridControl1.LevelTree.Nodes.Add("MasterDetailRelation1", gvDetail); AlignGridColumns(); gvDailySales.OptionsDetail.ShowDetailTabs = false; } else { gridControl1.DataSource = myMasterTable; AlignGridColumns(); } } private void CreateGridColumn(string caption, string fieldName, bool isVisible, bool isMaster) { GridColumn gridColumn = new GridColumn(); gridColumn.FieldName = fieldName; gridColumn.Caption = caption; gridColumn.AppearanceCell.Font = new System.Drawing.Font("Tahoma", 9.75F); gridColumn.AppearanceCell.Options.UseFont = true; gridColumn.AppearanceHeader.Font = new System.Drawing.Font("Tahoma", 9.75F, System.Drawing.FontStyle.Bold); gridColumn.AppearanceHeader.Options.UseFont = true; gridColumn.OptionsColumn.AllowEdit = false; gridColumn.Visible = isVisible; if (isMaster) { if (gvDailySales.Columns.ColumnByName(fieldName) == null) gvDailySales.Columns.Add(gridColumn); } else { if (gvDetail.Columns.ColumnByName(fieldName) == null) gvDetail.Columns.Add(gridColumn); } } private void CreateMasterTableColumns(string myFileFormat) { CreateMasterColumns(CreateGridColumn); CreateDetailColumns(CreateGridColumn); } < /code> оценил бы любую помощь или советы. Заранее спасибо! Подробнее здесь: [url]https://stackoverflow.com/questions/79432532/unable-to-right-align-devexpress-grid-view-columns-after-assigning-values-from-d[/url]