⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 databaseobjectinfo.cs

📁 树形逻辑报表程序源码,能根居元数据定义拖拉开发新的报表.
💻 CS
📖 第 1 页 / 共 2 页
字号:
			this.listView_content.Enabled = ((bool)(resources.GetObject("listView_content.Enabled")));
			this.listView_content.Font = ((System.Drawing.Font)(resources.GetObject("listView_content.Font")));
			this.listView_content.ImeMode = ((System.Windows.Forms.ImeMode)(resources.GetObject("listView_content.ImeMode")));
			this.listView_content.LabelWrap = ((bool)(resources.GetObject("listView_content.LabelWrap")));
			this.listView_content.Location = ((System.Drawing.Point)(resources.GetObject("listView_content.Location")));
			this.listView_content.MultiSelect = false;
			this.listView_content.Name = "listView_content";
			this.listView_content.RightToLeft = ((System.Windows.Forms.RightToLeft)(resources.GetObject("listView_content.RightToLeft")));
			this.listView_content.Size = ((System.Drawing.Size)(resources.GetObject("listView_content.Size")));
			this.listView_content.SmallImageList = this.imageList_TreeListView;
			this.listView_content.TabIndex = ((int)(resources.GetObject("listView_content.TabIndex")));
			this.listView_content.Text = resources.GetString("listView_content.Text");
			this.listView_content.Visible = ((bool)(resources.GetObject("listView_content.Visible")));
			// 
			// splitter1
			// 
			this.splitter1.AccessibleDescription = resources.GetString("splitter1.AccessibleDescription");
			this.splitter1.AccessibleName = resources.GetString("splitter1.AccessibleName");
			this.splitter1.Anchor = ((System.Windows.Forms.AnchorStyles)(resources.GetObject("splitter1.Anchor")));
			this.splitter1.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("splitter1.BackgroundImage")));
			this.splitter1.Dock = ((System.Windows.Forms.DockStyle)(resources.GetObject("splitter1.Dock")));
			this.splitter1.Enabled = ((bool)(resources.GetObject("splitter1.Enabled")));
			this.splitter1.Font = ((System.Drawing.Font)(resources.GetObject("splitter1.Font")));
			this.splitter1.ImeMode = ((System.Windows.Forms.ImeMode)(resources.GetObject("splitter1.ImeMode")));
			this.splitter1.Location = ((System.Drawing.Point)(resources.GetObject("splitter1.Location")));
			this.splitter1.MinExtra = ((int)(resources.GetObject("splitter1.MinExtra")));
			this.splitter1.MinSize = ((int)(resources.GetObject("splitter1.MinSize")));
			this.splitter1.Name = "splitter1";
			this.splitter1.RightToLeft = ((System.Windows.Forms.RightToLeft)(resources.GetObject("splitter1.RightToLeft")));
			this.splitter1.Size = ((System.Drawing.Size)(resources.GetObject("splitter1.Size")));
			this.splitter1.TabIndex = ((int)(resources.GetObject("splitter1.TabIndex")));
			this.splitter1.TabStop = false;
			this.splitter1.Visible = ((bool)(resources.GetObject("splitter1.Visible")));
			// 
			// DatabaseObjectInfo
			// 
			this.AccessibleDescription = resources.GetString("$this.AccessibleDescription");
			this.AccessibleName = resources.GetString("$this.AccessibleName");
			this.AutoScaleBaseSize = ((System.Drawing.Size)(resources.GetObject("$this.AutoScaleBaseSize")));
			this.AutoScroll = ((bool)(resources.GetObject("$this.AutoScroll")));
			this.AutoScrollMargin = ((System.Drawing.Size)(resources.GetObject("$this.AutoScrollMargin")));
			this.AutoScrollMinSize = ((System.Drawing.Size)(resources.GetObject("$this.AutoScrollMinSize")));
			this.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("$this.BackgroundImage")));
			this.ClientSize = ((System.Drawing.Size)(resources.GetObject("$this.ClientSize")));
			this.Controls.Add(this.splitter1);
			this.Controls.Add(this.listView_content);
			this.Controls.Add(this.treeView_DbObject);
			this.Controls.Add(this.panel1);
			this.Controls.Add(this.toolBar1);
			this.Enabled = ((bool)(resources.GetObject("$this.Enabled")));
			this.Font = ((System.Drawing.Font)(resources.GetObject("$this.Font")));
			this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
			this.ImeMode = ((System.Windows.Forms.ImeMode)(resources.GetObject("$this.ImeMode")));
			this.Location = ((System.Drawing.Point)(resources.GetObject("$this.Location")));
			this.MaximumSize = ((System.Drawing.Size)(resources.GetObject("$this.MaximumSize")));
			this.MinimumSize = ((System.Drawing.Size)(resources.GetObject("$this.MinimumSize")));
			this.Name = "DatabaseObjectInfo";
			this.RightToLeft = ((System.Windows.Forms.RightToLeft)(resources.GetObject("$this.RightToLeft")));
			this.StartPosition = ((System.Windows.Forms.FormStartPosition)(resources.GetObject("$this.StartPosition")));
			this.Text = resources.GetString("$this.Text");
			this.Load += new System.EventHandler(this.DatabaseObjectInfo_Load);
			this.ResumeLayout(false);

		}
		#endregion

		private void refreshview()
		{
			listView_content.Clear();
			treeView_DbObject.Nodes.Clear();

			if (conn.State == System.Data.ConnectionState.Closed)
				conn.Open();

			//treeView_DbObject.ImageList = imageList_TreeListView;
			TreeNode rootnode = new TreeNode( "数据库对象(表和视图)",0,0);
			treeView_DbObject.Nodes.Add( rootnode );
	
			System.Data.OleDb.OleDbCommand cmd = new OleDbCommand("select ObjectName,CatalogName,ObjectType,EDescription,CDescription,HDescription from TreeDbObjectInfos order by CatalogName",conn);
			System.Data.OleDb.OleDbDataReader rd = cmd.ExecuteReader();

			string belongto = "@@@`~";
			TreeNode belongtonode=null;
			while(rd.Read())
			{   
				if (!belongto.Equals(rd.GetString(1)))//CatalogName
				{
					belongto = rd.GetString(1);
					belongtonode = new TreeNode( belongto,1,1);
					rootnode.Nodes.Add(belongtonode);
				}

				int indexofimage = 3;
				if ("table".Equals(rd.GetString(2)))
					indexofimage = 2;

				TreeNode objectnode = new TreeNode(  rd.GetString(0),indexofimage,indexofimage);
				belongtonode.Nodes.Add(objectnode);
			}

			rd.Close();
			conn.Close();

			rootnode.Expand();

			listView_content.View = View.Details;
		}

		private void DatabaseObjectInfo_Load(object sender, System.EventArgs e)
		{
			//连接据库,这段程序用一个公共连接类代替
			conn.ConnectionString = TreeConnection.connstr;
			refreshview();
		}

		private void toolBar1_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
		{
			if(e.Button == toolBarButton_NewObject)
			{
				DatabaseObjectInfo_newobj newobjwin = new DatabaseObjectInfo_newobj();
				newobjwin.ShowDialog(this);
				newobjwin.Dispose();
			}
		}

		private void treeView_DbObject_AfterSelect(object sender, System.Windows.Forms.TreeViewEventArgs e)
		{
			if (currenttreenodetext.Equals(e.Node.Text))
				return;
			currenttreenodetext = e.Node.Text;

			listView_content.Clear();

			if (conn.State == System.Data.ConnectionState.Closed)
				conn.Open();

			if(e.Node.Parent == treeView_DbObject.Nodes[0])
			{
				listView_content.Columns.Add("数据对象",100,HorizontalAlignment.Left);
				listView_content.Columns.Add("类型",80,HorizontalAlignment.Left);
				listView_content.Columns.Add( "英文描述",120,HorizontalAlignment.Left);
				listView_content.Columns.Add("简体中文描述",120,HorizontalAlignment.Left);
				listView_content.Columns.Add("繁体中文描述",120,HorizontalAlignment.Left);

				System.Data.OleDb.OleDbCommand cmd = new OleDbCommand("select ObjectName,ObjectType,EDescription,CDescription,HDescription from TreeDbObjectInfos where CatalogName='" + e.Node.Text + "'" ,conn);
				System.Data.OleDb.OleDbDataReader rd = cmd.ExecuteReader();
				while(rd.Read())
				{
					ListViewItem item = new ListViewItem(rd.GetString(0));
					if ("table".Equals(rd.GetString(1)))
					   item.ImageIndex = 2;
					else
						item.ImageIndex = 3;

					item.SubItems.Add(rd.IsDBNull(1)?"":rd.GetString(1));
					item.SubItems.Add(rd.IsDBNull(2)?"":rd.GetString(2));
					item.SubItems.Add(rd.IsDBNull(3)?"":rd.GetString(3));
					item.SubItems.Add(rd.IsDBNull(4)?"":rd.GetString(4));
					listView_content.Items.Add(item);
				}
				rd.Close();

			}
			else if (e.Node != treeView_DbObject.Nodes[0])
			{
				listView_content.Columns.Add("数据项",100,HorizontalAlignment.Left);
				listView_content.Columns.Add("类型",80,HorizontalAlignment.Left);
				listView_content.Columns.Add( "长度",70,HorizontalAlignment.Center);
				listView_content.Columns.Add( "英文描述",120,HorizontalAlignment.Left);
				listView_content.Columns.Add("简体中文描述",120,HorizontalAlignment.Left);
				listView_content.Columns.Add("繁体中文描述",120,HorizontalAlignment.Left);
				listView_content.Columns.Add("有效位",70,HorizontalAlignment.Center);
				listView_content.Columns.Add("约束",100,HorizontalAlignment.Left);
				listView_content.Columns.Add("数据检查",100,HorizontalAlignment.Left);
				listView_content.Columns.Add("外键引用",100,HorizontalAlignment.Left);

				System.Data.OleDb.OleDbCommand cmd = new OleDbCommand("select itemname,TypeOfData,LengthOfData,EItemDescription,CItemDescription,HItemDescription,PrecisionOfData,ConstrainExp,CheckExp,ForeignExp from TreeDbObjectInfos_items where ObjectName='" + e.Node.Text + "'" ,conn);
				System.Data.OleDb.OleDbDataReader rd = cmd.ExecuteReader();
				while(rd.Read())
				{
					ListViewItem item = new ListViewItem(rd.GetString(0));
					item.ImageIndex = 4;

					item.SubItems.Add(rd.GetString(1));
					item.SubItems.Add(rd.IsDBNull(2)?"":rd.GetInt32(2).ToString());
					item.SubItems.Add(rd.IsDBNull(3)?"":rd.GetString(3));
					item.SubItems.Add(rd.IsDBNull(4)?"":rd.GetString(4));
					item.SubItems.Add(rd.IsDBNull(5)?"":rd.GetString(5));
					item.SubItems.Add(rd.IsDBNull(6)?"":rd.GetInt32(6).ToString());
					item.SubItems.Add(rd.IsDBNull(7)?"":rd.GetString(7));
					item.SubItems.Add(rd.IsDBNull(8)?"":rd.GetString(8));
					item.SubItems.Add(rd.IsDBNull(9)?"":rd.GetString(9));
					listView_content.Items.Add(item);
				}
				rd.Close();
			}

			conn.Close();
		
		}

		private void treeView_DbObject_DoubleClick(object sender, System.EventArgs e)
		{
			if (treeView_DbObject.SelectedNode != treeView_DbObject.Nodes[0] && treeView_DbObject.SelectedNode.Parent != treeView_DbObject.Nodes[0])
			{
				DatabaseObjectInfo_newobj newobjwin = new DatabaseObjectInfo_newobj();
				newobjwin.comboBox_ObjectName.Text = treeView_DbObject.SelectedNode.Text;

				newobjwin.ShowDialog(this);
				newobjwin.Dispose();
				refreshview();
			}
		}

	
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -