20161014001 DataGridView 单元格内容 自动计算

private void T_Form_CY_CBD_D_CellValueChanged(object sender, DataGridViewCellEventArgs e)
        {
            if (T_Form_CY_CBD_D.Rows.Count > 0 && e.RowIndex >= 0)
            {

// 计算制造成本的公式依据:工费率/产能/直通率.
                if (T_Form_CY_CBD_D.Rows[e.RowIndex].Cells[e.ColumnIndex].OwningColumn.Name == "DFWorkRate" || T_Form_CY_CBD_D.Rows[e.RowIndex].Cells[e.ColumnIndex].OwningColumn.Name == "DFCapacity" || T_Form_CY_CBD_D.Rows[e.RowIndex].Cells[e.ColumnIndex].OwningColumn.Name == "DFFPY")
                {
                    try
                    {
                        T_Form_CY_CBD_D.Columns["DFManufacturingCost"].ReadOnly = true;

if (T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFWorkRate"].Value.ToString().Trim() == "")
                        {
                            T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFWorkRate"].Value = "1";
                        }
                        if (T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFCapacity"].Value.ToString().Trim() == "")
                        {
                            T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFCapacity"].Value = "1";
                        }
                        if (T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFFPY"].Value.ToString().Trim() == "")
                        {
                            T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFFPY"].Value = "1";
                        }

T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFManufacturingCost"].Value =
                        System.Convert.ToDecimal(T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFWorkRate"].Value) /
                        System.Convert.ToDecimal(T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFCapacity"].Value) /
                        System.Convert.ToDecimal(T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFFPY"].Value);
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.ToString());
                    }
                }

// 计算浪费成本的公式依据: (制造成本)*(1-效率)/ 效率)
                if (T_Form_CY_CBD_D.Rows[e.RowIndex].Cells[e.ColumnIndex].OwningColumn.Name == "DFManufacturingCost"
                    || T_Form_CY_CBD_D.Rows[e.RowIndex].Cells[e.ColumnIndex].OwningColumn.Name == "DFEfficiency")
                {
                    try
                    {
                        T_Form_CY_CBD_D.Columns["DFWasteCost"].ReadOnly = true;

if (T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFManufacturingCost"].Value.ToString().Trim() == "")
                        {
                            T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFManufacturingCost"].Value = "0.00";
                        }
                        if (T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFEfficiency"].Value.ToString().Trim() == "")
                        {
                            T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFEfficiency"].Value = "1";
                        }

T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFWasteCost"].Value =
                        System.Convert.ToDecimal(T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFManufacturingCost"].Value) *
                        (1 - System.Convert.ToDecimal(T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFEfficiency"].Value)) /
                        System.Convert.ToDecimal(T_Form_CY_CBD_D.Rows[e.RowIndex].Cells["DFEfficiency"].Value);
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.ToString());
                    }
                }

//

}
        }

时间: 2024-10-02 20:55:51

20161014001 DataGridView 单元格内容 自动计算的相关文章

DataGridView单元格内容自动匹配下拉显示

页面显示数据使用的控件是ComponentFactory.Krypton.Toolkit中的KryptonDataGridView控件.在指定“商品”单元格中需要根据用户输入内容自动匹配数据库中商品信息,并且单元格处于编辑模式时显示一个查询图标的按钮,点击该按钮也将显示数据库中所有商品信息. KryptonDataGridView显示控件此处命名为kDGVIndentDetail; 用于下拉显示匹配内容的DataGridView命名为dgv; 1.建立一个DataGridView类型的页面变量用

C# DataGridView在单元格提示里(ToolTip)显示完整的单元格内容

当单元格内容太多时,则会忽略后面的内容 解决方案: 添加Dgv鼠标移到单元格事件时,设置当前单元格的ToolTipText属性内容为当前单元格内容 void From_Load(object sender, EventArgs e) { this.dgvSystemLog.ShowCellToolTips = true; this.dgvSystemLog.CellMouseEnter += new DataGridViewCellEventHandler(dgvSystemLog_CellMo

dataGridView设置单元格内容的显示格式CellFormatting

#region 设置单元格内容的显示格式 private void dataGridView_main_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e) { #region 会诊方式判断 int requestType_column_index = 9; if (e.ColumnIndex == requestType_column_index) { string sval = (e.Value ?? "&q

设置DataGridView单元格的文本对齐方式

实现效果: 知识运用: DataGridViewCellStyle类的Alignment属性     //获取或设置DataGridView单元格内的单元格内容的位置 public DataGridViewContentAlignment Alignment {get; set;} //  设置控件列的DefaultCellStyle.Alignment属性来完成 实现代码: dataGridView1.Columns[0].DefaultCellStyle.Alignment = DataGr

Excel单元格内容太多会覆盖遮住下一单元格范围

Excel单元格内容太多会覆盖遮住下一单元格范围分步阅读 Excel中的单元格内容,有着不同的对齐方式.用户可根据自己的需求,在处理数据的时候,自行设置所需要的对齐方式. 当您在处理数据的时候,如果设置不当,就会遇到这样的问题:Excel单元格内容太多会覆盖遮住下一单元格范围. 可以通过如下的方法来解决. 方法/步骤 如下图,B2单元格,仅输入了几个中文,但是,由于列的宽度不够,因此,该单元格的内容会延伸到下一单元格并覆盖了下一单元格的范围.从而影响了下一单元格的输入与修改. 此时,我们需要的方

javascript生成表格增删改查 JavaScript动态改变表格单元格内容 动态生成表格 JS获取表格任意单元格 javascript如何动态删除表格某一行

jsp页面表格布局Html代码 <body > <center> <input type="text" value="111" id="mytext"> <table border="1" width="60%" id="mytable"> <tr> <td id="td1">第一行第一列<

DataGridView单元格合并

本文章转载:http://www.cnblogs.com/xiaofengfeng/p/3382094.html 图: 代码就是如此简单 文件下载:DataGridView单元格合并源码

DataGridView单元格显示GIF图片

本文转载:http://home.cnblogs.com/group/topic/40730.html DataGridView单元格显示GIF图片 gifanimationindatagrid.rar 4.自定义显示DataGridView列(行头显示行号与图标,同一单元格显示图片也显示文字)TestDataGridViewRowStyle2.rar

EXCEL里面单元格内容太多显示不全应该怎么弄。

首先设置单元格式:在相应单元格单击右键 -> 选择"设置单元格格式(F)..." -> 选择"对齐" -> 勾选"自动换行(W)" -> 点击"确定"然后调整行高.列宽就可以了 EXCEL里面单元格内容太多显示不全应该怎么弄.,布布扣,bubuko.com