📄 dbmaintainfrm.cs
字号:
// txtKey2
//
this.txtKey2.Location = new System.Drawing.Point(624, 48);
this.txtKey2.Name = "txtKey2";
this.txtKey2.Size = new System.Drawing.Size(104, 21);
this.txtKey2.TabIndex = 14;
this.txtKey2.Text = "";
this.txtKey2.TextChanged += new System.EventHandler(this.txtKey2_TextChanged);
//
// cmbMatch2
//
this.cmbMatch2.Location = new System.Drawing.Point(376, 48);
this.cmbMatch2.Name = "cmbMatch2";
this.cmbMatch2.Size = new System.Drawing.Size(120, 20);
this.cmbMatch2.TabIndex = 13;
this.cmbMatch2.Click += new System.EventHandler(this.cmbMatch2_Click);
this.cmbMatch2.SelectedIndexChanged += new System.EventHandler(this.cmbMatch2_SelectedIndexChanged);
//
// dataGrid1
//
this.dataGrid1.AlternatingBackColor = System.Drawing.Color.LightBlue;
this.dataGrid1.BackColor = System.Drawing.Color.WhiteSmoke;
this.dataGrid1.CaptionBackColor = System.Drawing.Color.LightSkyBlue;
this.dataGrid1.CaptionForeColor = System.Drawing.Color.FromArgb(((System.Byte)(64)), ((System.Byte)(64)), ((System.Byte)(64)));
this.dataGrid1.ContextMenu = this.contextMenu1;
this.dataGrid1.DataMember = "";
this.dataGrid1.HeaderForeColor = System.Drawing.SystemColors.ControlText;
this.dataGrid1.Location = new System.Drawing.Point(176, 32);
this.dataGrid1.Name = "dataGrid1";
this.dataGrid1.Size = new System.Drawing.Size(816, 488);
this.dataGrid1.TabIndex = 2;
this.dataGrid1.TableStyles.AddRange(new System.Windows.Forms.DataGridTableStyle[] {
this.dataGridTableStyle1});
this.dataGrid1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.dataGrid1_MouseDown);
//
// dataGridTableStyle1
//
this.dataGridTableStyle1.BackColor = System.Drawing.SystemColors.Info;
this.dataGridTableStyle1.DataGrid = this.dataGrid1;
this.dataGridTableStyle1.HeaderForeColor = System.Drawing.SystemColors.ControlText;
this.dataGridTableStyle1.MappingName = "";
this.dataGridTableStyle1.SelectionBackColor = System.Drawing.SystemColors.Desktop;
//
// DBMaintainFrm
//
this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
this.ClientSize = new System.Drawing.Size(1016, 525);
this.Controls.Add(this.groupBox2);
this.Controls.Add(this.groupBox1);
this.Controls.Add(this.dataGrid1);
this.Controls.Add(this.toolBar);
this.Name = "DBMaintainFrm";
this.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
this.Text = "数据库";
this.Closing += new System.ComponentModel.CancelEventHandler(this.DBMaintainFrm_Closing);
this.Load += new System.EventHandler(this.DBMaintainFrm_Load);
this.groupBox1.ResumeLayout(false);
this.groupBox2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.dataGrid1)).EndInit();
this.ResumeLayout(false);
}
#endregion
#region //工具条
private void toolBar_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
{
int imageIndex=e.Button.ImageIndex;
switch(imageIndex)
{
case 0://连接
break;
case 1:
CreateTable f2=new CreateTable("");
f2.Show();
break;
case 2:
AlterTabel f3=new AlterTabel(this.listBox1.SelectedItem.ToString().Trim(),ownerPermiton);
f3.Show();
break;
case 3:
if (MessageBox.Show("确定要删除该表吗","重要提示",MessageBoxButtons.OKCancel)==DialogResult.OK)
{
string sql="drop table "+tablename+"";
if (da.ExSQL(sql))
{
ListBoxDateBiding();
dataGridDataBiding("select * from "+tablename+"");
}
}
else
{
return;
}
break;
case 4:
this.dataGrid1.UnSelect(this.dataGrid1.CurrentRowIndex);
int f=ds.Tables[0].Rows.Count;
this.dataGrid1.CurrentCell=new DataGridCell(f,1);
break;
case 5:
if (MessageBox.Show("确定要删除当前数据吗?","重要提示",MessageBoxButtons.OKCancel)==DialogResult.OK)
{
DeletfromDataRow();
}
else
{
return;
}
break;
case 6:
updatatoDB();
break;
case 8:
this.groupBox2.Visible=true;
this.dataGrid1.Location=new System.Drawing.Point(176, 120);
break;
case 7:
this.groupBox2.Visible=false;
this.dataGrid1.Location=new System.Drawing.Point(176,32);
this.dataGrid1.Size=new System.Drawing.Size(816,488);
SQL="Select * from "+tablename+"";
dataGridDataBiding(SQL);
break;
case 9:
ListBoxDateBiding();
SQL="Select * from "+tablename+"";
dataGridDataBiding(SQL);
break;
}
}
#endregion
#region //listbox绑定数据
public void ListBoxDateBiding()
{
this.listBox1.Items.Clear();
string sql= "SELECT name FROM sysobjects WHERE xtype='U'and (name <>'databf' and name<>'dtproperties' and name<>'user_table' and name<>'定制_报表' and name<>'USERZB')order by name";
DataTable dt=new DataTable();
dt=da.GetDataTable(sql);
for (int i=0;i<dt.Rows.Count;i++)
{
string name=dt.Rows[i].ItemArray[0].ToString();
this.listBox1.Items.Add(name);
tables.Add(name);
this.listBox1.SelectedIndex=0;//初始化
tablename=this.listBox1.SelectedItem.ToString().Trim();
}
}
#endregion
#region//dataGrid绑定数据
public void dataGridDataBiding(string sql)
{
//string sql="SELECT c.name FROM syscolumns c,sysobjects o WHERE (c.id = o.id and o.name = \'"+tablename+"\')";
SQL=sql;
ds=da.GetDataSet(SQL,tablename);
// DataTable dt=new DataTable();
// dt=da.GetDataTable(sql);
//this.dataGrid1.DataSource=dt;
dataGrid1.CaptionText=tablename;
dcc=ds.Tables[0].Columns;
DataGridTableStyle dataGridTableTargetStyle = null;
DataGridTextBoxColumn dataGridTextBoxColumn = null;
dataGridTableTargetStyle = new DataGridTableStyle();
dataGrid1.DataSource=ds.Tables[0];
dataGrid1.TableStyles.Clear();
dataGridTableTargetStyle.MappingName = ds.Tables[0].TableName;
dataGridTableTargetStyle.RowHeadersVisible = false;
dataGridTableTargetStyle.AlternatingBackColor=System.Drawing.Color.LightBlue;//奇数行背景色
dataGridTableTargetStyle.BackColor=System.Drawing.Color.WhiteSmoke;//dataGrid 背景色
int colsNum=ds.Tables[0].Columns.Count;
for(int i=0;i<colsNum;i++)
{
if (dcc[i].ColumnName.Trim()==IdentityCol)
{
IdentityColIndex=i;
dataGridTextBoxColumn = new DataGridTextBoxColumn();
dataGridTextBoxColumn.MappingName = dcc[i].ToString().Trim();
dataGridTextBoxColumn.HeaderText = dcc[i].ColumnName.ToString().Trim();
dataGridTextBoxColumn.Width = 0;
dataGridTableTargetStyle.GridColumnStyles.Add(dataGridTextBoxColumn);
}
else
{
dataGridTextBoxColumn = new DataGridTextBoxColumn();
dataGridTextBoxColumn.NullText="";
dataGridTextBoxColumn.MappingName = dcc[i].ToString().Trim();
dataGridTextBoxColumn.HeaderText = dcc[i].ColumnName.ToString().Trim();
dataGridTextBoxColumn.TextBox.AutoSize = true;
dataGridTableTargetStyle .PreferredColumnWidth = dataGridTextBoxColumn.TextBox.Width;
if ( dataGridTableTargetStyle.PreferredColumnWidth>80)
{
dataGridTableTargetStyle.PreferredColumnWidth =80;
}
dataGridTableTargetStyle.GridColumnStyles.Add(dataGridTextBoxColumn);
}
}
dataGrid1.TableStyles.Add(dataGridTableTargetStyle);
//判断删除一行是否可用
if (dataGrid1.VisibleRowCount==1)
{
this.toolBarButton5.Enabled=false;
}
else
{this.toolBarButton5.Enabled=true;}
}
#endregion
#region //判断那个是自动增长字段早dataGrid中隐藏
public void IsIdentityCol()
{
string sql="select name from syscolumns where columnproperty(id,name,'IsIdentity')=1 and id in(select id from sysobjects where name='"+tablename0+"')";
DataTable mydatatable=da.GetDataTable(sql);
IdentityCol=mydatatable.Rows[0][0].ToString().Trim();
}
#endregion
#region//load
private void DBMaintainFrm_Load(object sender, System.EventArgs e)
{
// if (ConnStr=="")
// {
// DialogResult dr = MessageBox.Show("请先配置数据服务器", "提示信息", MessageBoxButtons.OKCancel, MessageBoxIcon.Information, MessageBoxDefaultButton.Button2);
// if (dr == DialogResult.OK)
// {
// frmLogin Login=new frmLogin();
// Login.Show();
// }
// else
// {
//
// }
// }
// else
// {
// ListBoxDateBiding();
// }
SQL="SELECT * FROM "+tablename+"";
ListBoxDateBiding();
dataGridDataBiding(SQL);
initSearchGroup();
if (ownerPermiton=="dbo")
{
this.toolBarButton3.Enabled=false;
}
else
{
this.toolBarButton3.Enabled=true;
}
}
#endregion
#region //listBox 单击 表名改变,dataGrid数据改变
private void listBox1_SelectedIndexChanged(object sender, System.EventArgs e)
{
this.cmbMath1.Text="";
this.cmbMatch2.Text="";
if (listBox1.SelectedItem.ToString().Trim()!=null)
{
tablename0=this.listBox1.SelectedItem.ToString().Trim();
this.tablename=listBox1.SelectedItem.ToString();
string s=permition();
if (s=="dbo")
{
this.toolBarButton3.Enabled=false;
}
else
{
tablename="YUY."+tablename;
this.toolBarButton3.Enabled=true;
}
IsIdentityCol();
SQL="SELECT * FROM "+tablename+"";
dataGridDataBiding(SQL);
initSearchGroup();
}
}
#endregion
#region //初始化查询Group
public void initSearchGroup()
{
this.cmbSearch1.Text="";
this.cmbSearch2.Text="";
this.cmbSearch1.Items.Clear();
this.cmbSearch2.Items.Clear();
for (int i=1;i<dcc.Count;i++)
{
this.cmbSearch1.Items.Add(dcc[i].ToString().Trim());
this.cmbSearch2.Items.Add(dcc[i].ToString().Trim());
}
}
#endregion
#region //删除
private void menuItem2_Click(object sender, System.EventArgs e)
{
if (MessageBox.Show("确定要删除当前数据吗?","重要提示",MessageBoxButtons.OKCancel)==DialogResult.OK)
{
DeletfromDataRow();
}
else
{
return;
}
}
public void DeletfromDataRow()
{
// DataSet ds12=ds.GetChanges();
// MessageBox.Show(ds.Tables[0].Rows.Count.ToString());
// MessageBox.Show(this.dataGrid1.VisibleRowCount.ToString());
// MessageBox.Show(this.dataGrid1.CurrentRowIndex.ToString());
// MessageBox.Show(ds.Tables[0].Rows[this.dataGrid1.CurrentRowIndex][2].ToString());
// updatatoDB2();
// GetFocus(this.dataGrid1.CurrentRowIndex-1,1);
// this.dataGrid1[CR,0]=0;
int t=0;
for (int i=0;i<ds.Tables[0].Columns.Count;i++)
{
if (dataGrid1[this.dataGrid1.CurrentRowIndex,i].ToString()=="")
{
t++;
}
// MessageBox.Show(ds.Tables[0].Columns.Count.ToString());
}
if (t==ds.Tables[0].Columns.Count)
{
MessageBox.Show("该行没有数据");
return;
}
else
{
updatatoDB2();
dataGridDataBiding("Select * from "+tablename+"");
this.dataGrid1.CurrentRowIndex=CR;
// MessageBox.Show(this.dataGrid1.CurrentRowIndex.ToString());
DataColumnCollection dcc=ds.Tables[0].Columns;//取得table的列
DataColumn dc=dcc[IdentityCol];
DataColumn[] mydc={dc};//转换为可用格式
ds.Tables[0].PrimaryKey=mydc;//主键
// string c=dc.ToString();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -