Files
lserp_cs_5.0/插件库/Lskj.PubBill/Lskj.PubBill/FrmBomSelect.cs
T
2026-07-10 15:25:05 +08:00

153 lines
4.7 KiB
C#

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using CommonLib.data;
using DevExpress.XtraGrid.Views.Grid;
using Lskj.MyControl;
using DevExpress.XtraGrid.Columns;
namespace Lskj.PubBill
{
public partial class FrmBomSelect : FormBase
{
public formBase frmMain { get; set; }
public string FormText { get; set; }
public DataTable dt { get; set; }
public GridView gv { get; set; }
public GridControlEx gce { get; set; }
public int ApplyRemember { get; set; }
public FrmBomSelect()
{
InitializeComponent();
}
protected override void OnLoad(EventArgs e)
{
this.Text = FormText;
DataColumn dc = new DataColumn()
{
Caption = "选择",
DataType = typeof(bool),
ColumnName = "Id",
DefaultValue = true
};
dt.Columns.Add(dc);
dt.AcceptChanges();
gridBom.DataSource = dt;
gvBill.Columns.Clear();
GridColumn gridColumn = new GridColumn();
gridColumn.FieldName = "Id";
gridColumn.Name = "Id";
gridColumn.Caption = "选择";
gridColumn.Width = 50;
gridColumn.VisibleIndex = 1;
gridColumn.AppearanceHeader.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center;
gridColumn.Visible = true;
gvBill.Columns.Add(gridColumn);
GridColumnCollection gcc = gce.gridView.Columns;
foreach (GridColumn item in gcc)
{
GridColumn gc2 = new GridColumn();
gc2.Caption = item.Caption;
gc2.FieldName = item.FieldName;
gc2.OptionsColumn.AllowEdit = false;
gc2.OptionsColumn.ReadOnly = true;
gc2.Width = item.Width;
gc2.VisibleIndex = 1;
gc2.Visible = true;
gvBill.Columns.Add(gc2);
}
}
private void btnAdd_Click(object sender, EventArgs e)
{
DataTable dt = gridBom.DataSource as DataTable;
bool isSelect = false;
foreach (DataRow row in dt.Rows)
{
string msg = row["Id"] + "";
if (msg.IndexOf("true", StringComparison.OrdinalIgnoreCase) != -1)
{
isSelect = true;
}
}
if (!isSelect)
{
MessageBox.Show("请必须选择一项", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
foreach (DataRow row in dt.Rows)
{
string msg = row["Id"] + "";
if (msg.IndexOf("true", StringComparison.OrdinalIgnoreCase) != -1)
{
frmMain.AddToBillEx1(gv, gce, row);
}
}
ApplyRemember = 11;
if (chkOperate.Checked)
ApplyRemember = 12;
this.DialogResult = DialogResult.OK;
}
private void btnSelectAll_Click(object sender, EventArgs e)
{
DataTable dt = gridBom.DataSource as DataTable;
foreach (DataRow row in dt.Rows)
{
row["Id"] = true;
}
}
private void btnFx_Click(object sender, EventArgs e)
{
DataTable dt = gridBom.DataSource as DataTable;
foreach (DataRow row in dt.Rows)
{
string msg = row["Id"] + "";
if (msg.IndexOf("true", StringComparison.OrdinalIgnoreCase) != -1)
{
row["Id"] = false;
}
else
{
row["Id"] = true;
}
}
}
private void btnExit_Click(object sender, EventArgs e)
{
ApplyRemember = 21;
if (chkOperate.Checked)
ApplyRemember = 22;
this.DialogResult = DialogResult.Cancel;
}
private void gvBill_Click(object sender, EventArgs e)
{
}
private void gvBill_RowCellClick(object sender, RowCellClickEventArgs e)
{
DataRow row = gvBill.GetDataRow(e.RowHandle);
string id = row["Id"] + "";
if (id.IndexOf("true", StringComparison.OrdinalIgnoreCase) != -1)
{
row["Id"] = false;
}
else
{
row["Id"] = true;
}
}
}
}