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

📄 selectsubject.h

📁 Visual C++.net数据库开发经典案例
💻 H
字号:
#pragma once

#include "LinkDataBase.h"
#include "DataGridNoActiveCellColumn.h"

using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;


namespace My
{
	/// <summary> 
	/// SelectSubject 摘要
	///
	/// 警告: 如果您更改该类的名称,则将需要更改 
	///          与该类所依赖的所有 .resx 文件关联的托管资源编译器工具的 
	///          “资源文件名”属性。  否则,
	///          设计器将不能与此窗体关联的
	///          本地化资源正确交互。
	/// </summary>
	public __gc class SelectSubject : public System::Windows::Forms::Form
	{
	//--------------------成员声明------------------------
	public:
		String* SubjectID;
		String* SubjectName;
	private:
		LinkDataBase* MyDataBase;	//数据库连接类
		DataSet* ds;		
		String* strTableName;
		String* strSQL;		
	private: System::Windows::Forms::DataGrid *  dgrdSubject;
			 SqlDataAdapter* SubjectAdapter;
	//-------------------成员声明结束-----------------------
	public: 
		SelectSubject(void)
		{
			InitializeComponent();
			this->MyDataBase = new LinkDataBase();
			this->SubjectAdapter = new SqlDataAdapter();
			this->ds = new DataSet();
			this->strSQL = S"SELECT * FROM  科目表";
			this->strTableName = S"科目表";
			this->MyDataBase->SelectDataBase(this->SubjectAdapter,this->ds,this->strSQL,this->strTableName);	
			this->dgrdSubject->DataSource = this->ds->Tables->Item[S"科目表"];
			this->DataGridStateControl();
		}
        
	protected: 
		void Dispose(Boolean disposing)
		{
			if (disposing && components)
			{
				components->Dispose();
			}
			__super::Dispose(disposing);
		}


	private:
		/// <summary>
		/// 必需的设计器变量。
		/// </summary>
		System::ComponentModel::Container* components;

		/// <summary>
		/// 设计器支持所需的方法 - 不要使用代码编辑器修改
		/// 此方法的内容。
		/// </summary>
		void InitializeComponent(void)
		{
			this->dgrdSubject = new System::Windows::Forms::DataGrid();
			(__try_cast<System::ComponentModel::ISupportInitialize *  >(this->dgrdSubject))->BeginInit();
			this->SuspendLayout();
			// 
			// dgrdSubject
			// 
			this->dgrdSubject->DataMember = S"";
			this->dgrdSubject->Dock = System::Windows::Forms::DockStyle::Fill;
			this->dgrdSubject->HeaderForeColor = System::Drawing::SystemColors::ControlText;
			this->dgrdSubject->Location = System::Drawing::Point(0, 0);
			this->dgrdSubject->Name = S"dgrdSubject";
			this->dgrdSubject->Size = System::Drawing::Size(712, 389);
			this->dgrdSubject->TabIndex = 0;
			this->dgrdSubject->DoubleClick += new System::EventHandler(this, dataGrid1_DoubleClick);
			// 
			// SelectSubject
			// 
			this->AutoScaleBaseSize = System::Drawing::Size(6, 14);
			this->ClientSize = System::Drawing::Size(712, 389);
			this->Controls->Add(this->dgrdSubject);
			this->Name = S"SelectSubject";
			this->Text = S"科目选择";
			(__try_cast<System::ComponentModel::ISupportInitialize *  >(this->dgrdSubject))->EndInit();
			this->ResumeLayout(false);

		}		
		//------------------设置表格样式----------------------
		void DataGridStateControl()
		{
			DataGridTableStyle* ts = new DataGridTableStyle();
			DataGridNoActiveCellColumn* aTextColumn;
			ts->AlternatingBackColor = Color::LightGray;
			ts->MappingName = this->ds->Tables->Item[S"科目表"]->TableName;

			int numCols = this->ds->Tables->Item[S"科目表"]->Columns->Count;
			for(int i = 0;i < numCols;i++)
			{
				aTextColumn = new DataGridNoActiveCellColumn();
				aTextColumn->get_TextBox()->Enabled = false;
				aTextColumn->MappingName = this->ds->Tables->Item[S"科目表"]->Columns->Item[i]->ColumnName;
				aTextColumn->HeaderText = this->ds->Tables->Item[S"科目表"]->Columns->Item[i]->ColumnName;
				aTextColumn->NullText = S"";
				aTextColumn->Format = S"D";
				ts->GridColumnStyles->Add(aTextColumn);
			}
			this->dgrdSubject->TableStyles->Add(ts);
			this->dgrdSubject->Select(0);
		}
private: System::Void dataGrid1_DoubleClick(System::Object *  sender, System::EventArgs *  e)
		{
			int row = this->dgrdSubject->CurrentRowIndex;
			this->SubjectID = this->ds->Tables->Item[S"科目表"]->Rows->Item[row]->Item[S"科目代码"]->ToString()->Trim();
			this->SubjectName = this->ds->Tables->Item[S"科目表"]->Rows->Item[row]->Item[S"科目名称"]->ToString()->Trim();
			this->DialogResult = DialogResult::OK;
		}

	};
}

⌨️ 快捷键说明

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