ユーザーコントロール&カスタムコントロール----.Net再学
4937 ワード
勉強を始めるNetは今まで2年が速くて、javaを学ぶことを始めて半年もあって、中間はプロジェクトをして、また始まります.Netの勉強.今度やるNetプロジェクトは、バックグラウンドコードがあまり叩かれていないので、UIに重点を置いています.これもこのブログで書く内容に関係しています.UIを作るにはコントロールの使用が欠かせません.今回UIを作るのは主に公共、抽象コントロールを抽出することです.
コードを叩くと、コントロールが欠かせません.それは初めてです.Netは学習した後,コントロールに対する認識が浅く,今回の学習によりUIコントロールに対する認識を補った.このブログでは、ユーザーコントロールとカスタムコントロールについて説明します.この2つのコントロールといえば、プログラミングの子供たちはよく知られていないに違いないが、使用といえば、彼らの違いといえば、仲間たちは知っているだろうか.
この2つのコントロールを比較してみましょう.
一、創造性と使いやすさ
それらの主な違いは、設計時の創造性と使いやすさにある.
1、作成性
ユーザーコントロールは簡単に作成でき、可視化設計ツールを使用するユーザーに限られたサポートを提供する.通常のページを編集するように可視化編集環境があり、通常のページと同じようにページ部分を含むことができる.aspxと.csコードファイル.
カスタムコントロールは可視化編集されず、コンパイルされたコードであり、使いやすいが作成しにくい.手書きコードのみ.1つしか含まれていません.csコードファイル.
2、使いやすさ
ユーザーコントロールの開発が便利で、カスタムコントロールの開発が煩雑で、ユーザーコントロールの使用、各アプリケーションにはコントロールの単独コピーが必要で、visual studioツールボックスに追加することはできません.静的レイアウトに適しています.これらは高度なスキームで使用するのは不便かもしれません.
カスタムコントロールはコンパイルできます.DLLファイルは、他のアイテムでも使用できます.コンパイル後はツールボックスにロードでき、TextBox、DataGridのようにデザイナでマウスでページにドラッグして使用できます.カスタムコントロールは再利用性が高く、パーソナライズされたコントロールをカスタマイズできます.よく使用され、既存のコントロールでは完了できないタスクを解決します.
3、使用範囲
ユーザーに完全なビジュアル化設計ツールサポートを提供するカスタムコントロール.グローバル・プログラム・セット・キャッシュに必要なコントロールの単一コピーのみを、ダイナミック・レイアウトに適したvisual studioのツール・ボックスに追加できます.コントロールに静的レイアウトが多数含まれている場合は、ユーザーコントロールが好ましい場合があります.
4、使用
ユーザーコントロール(UserControl):拡張子*.ascx,および*.aspxは構造的に類似しており、ページにロードする機能ブロックを指すが、ユーザーコントロールは単独でページとして実行することができず、*に埋め込まなければならない.aspxページまたは他のユーザーコントロールで使用する.aspが必要ですNetページをコンテナとして使用します.カスタムコントロールは、HtmlControlやWebControlと似ています.コンパイル後、ツールバーに参照を追加し、マウスでドラッグして使用することができます.
二、ユーザーコントロールとカスタムコントロール
1)、カスタムサーバーコントロール
また、2つに分けられます.1.一つは*を使うことです.aspxコードと*.csコードをコンパイルするDLLを生成し、ツールボックスに参照を追加して使用する.WebFormで一般的に使用する. 2.もう1つは*のみです.cs実装、再コンパイル生成DLL、ツールボックスに追加して使用する.一般的にWinFormに用いる.生成手順:例:1.Buttonをデザイナからページにドラッグし、ボタンのサイズ、色、またはテキストに固定値を設定します.ファイル名はa.cs 2です. csc /r:System.dll /t:library/out:../../A.dll a.cs 3. ツールボックスの空白を右クリックし、メニューを右クリックして「削除項目を追加」を選択し、生成したDLLをツールボックスに追加することで、一般的なButtonのようにドラッグして使用することができます.
2)次に、ユーザーコントロールを見てみましょう.
ユーザーコントロール用ascxファイルは、「新しいアイテムを追加」で「webユーザーコントロール」をクリックすることを示す.コンパイルコードではなく、コンパイルはWebページに従って動的に行われます.
ユーザーコントロールはキャッシュをサポートし、カスタムコントロールはキャッシュをサポートしない.ユーザーコントロールは、1つのアプリケーションで再利用できますが、アプリケーション間で再利用することはできません.カスタム・ユーザーは、グローバル・プログラム・セット・キャッシュと呼ばれる中央ライブラリに配置され、そのサーバ上のすべてのアプリケーションが使用できるように、アプリケーション間で使用できます.
三、ユーザーコントロールの例
これは他の人のユーザーコントロールの例で、参考にしてください.
まとめ:最近行われたMVCプロジェクトでは、Htmlで共通のページを作成したり、半分のページを作成したりしていますが、このようにカスタムコントロールのように見えますが、実際には、ユーザーコントロールはずっと使用されていません.
だけじゃないNetは、Javaでも似たような概念があるはずですが、includeで他のページが含まれているので、具体的には分かりませんが、これからjavaをするとひっくり返すことができます.
コードを叩くと、コントロールが欠かせません.それは初めてです.Netは学習した後,コントロールに対する認識が浅く,今回の学習によりUIコントロールに対する認識を補った.このブログでは、ユーザーコントロールとカスタムコントロールについて説明します.この2つのコントロールといえば、プログラミングの子供たちはよく知られていないに違いないが、使用といえば、彼らの違いといえば、仲間たちは知っているだろうか.
この2つのコントロールを比較してみましょう.
一、創造性と使いやすさ
それらの主な違いは、設計時の創造性と使いやすさにある.
1、作成性
ユーザーコントロールは簡単に作成でき、可視化設計ツールを使用するユーザーに限られたサポートを提供する.通常のページを編集するように可視化編集環境があり、通常のページと同じようにページ部分を含むことができる.aspxと.csコードファイル.
カスタムコントロールは可視化編集されず、コンパイルされたコードであり、使いやすいが作成しにくい.手書きコードのみ.1つしか含まれていません.csコードファイル.
2、使いやすさ
ユーザーコントロールの開発が便利で、カスタムコントロールの開発が煩雑で、ユーザーコントロールの使用、各アプリケーションにはコントロールの単独コピーが必要で、visual studioツールボックスに追加することはできません.静的レイアウトに適しています.これらは高度なスキームで使用するのは不便かもしれません.
カスタムコントロールはコンパイルできます.DLLファイルは、他のアイテムでも使用できます.コンパイル後はツールボックスにロードでき、TextBox、DataGridのようにデザイナでマウスでページにドラッグして使用できます.カスタムコントロールは再利用性が高く、パーソナライズされたコントロールをカスタマイズできます.よく使用され、既存のコントロールでは完了できないタスクを解決します.
3、使用範囲
ユーザーに完全なビジュアル化設計ツールサポートを提供するカスタムコントロール.グローバル・プログラム・セット・キャッシュに必要なコントロールの単一コピーのみを、ダイナミック・レイアウトに適したvisual studioのツール・ボックスに追加できます.コントロールに静的レイアウトが多数含まれている場合は、ユーザーコントロールが好ましい場合があります.
4、使用
ユーザーコントロール(UserControl):拡張子*.ascx,および*.aspxは構造的に類似しており、ページにロードする機能ブロックを指すが、ユーザーコントロールは単独でページとして実行することができず、*に埋め込まなければならない.aspxページまたは他のユーザーコントロールで使用する.aspが必要ですNetページをコンテナとして使用します.カスタムコントロールは、HtmlControlやWebControlと似ています.コンパイル後、ツールバーに参照を追加し、マウスでドラッグして使用することができます.
二、ユーザーコントロールとカスタムコントロール
1)、カスタムサーバーコントロール
また、2つに分けられます.1.一つは*を使うことです.aspxコードと*.csコードをコンパイルするDLLを生成し、ツールボックスに参照を追加して使用する.WebFormで一般的に使用する. 2.もう1つは*のみです.cs実装、再コンパイル生成DLL、ツールボックスに追加して使用する.一般的にWinFormに用いる.生成手順:例:1.Buttonをデザイナからページにドラッグし、ボタンのサイズ、色、またはテキストに固定値を設定します.ファイル名はa.cs 2です. csc /r:System.dll /t:library/out:../../A.dll a.cs 3. ツールボックスの空白を右クリックし、メニューを右クリックして「削除項目を追加」を選択し、生成したDLLをツールボックスに追加することで、一般的なButtonのようにドラッグして使用することができます.
2)次に、ユーザーコントロールを見てみましょう.
ユーザーコントロール用ascxファイルは、「新しいアイテムを追加」で「webユーザーコントロール」をクリックすることを示す.コンパイルコードではなく、コンパイルはWebページに従って動的に行われます.
ユーザーコントロールはキャッシュをサポートし、カスタムコントロールはキャッシュをサポートしない.ユーザーコントロールは、1つのアプリケーションで再利用できますが、アプリケーション間で再利用することはできません.カスタム・ユーザーは、グローバル・プログラム・セット・キャッシュと呼ばれる中央ライブラリに配置され、そのサーバ上のすべてのアプリケーションが使用できるように、アプリケーション間で使用できます.
三、ユーザーコントロールの例
これは他の人のユーザーコントロールの例で、参考にしてください.
public partial class Login : System.Web.UI.UserControl
{
protected SqlConnection conn;
protected SqlCommand cmd;
protected SqlDataReader dr;
/// <summary>
/// Txtusername , aspx public
/// </summary>
public string Txtusername
{
get { return this.TextBox1.Text; }
set { this.TextBox1.Text = value; }
}
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click1(object sender, EventArgs e)
{
string strname = this.TextBox1.Text.Trim();
string strpwd = this.TextBox2.Text.Trim();
// MD5
//this.Response.Write(System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(strpwd, "MD5"));
conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["DBuserConnectionString"].ToString());
conn.Open();
cmd = new SqlCommand("select * from userdetails where username=@username and userpwd=@userpwd", conn);//System.Web.Configuration.FormsAuthPasswordFormat.MD5
cmd.Parameters.Add(new SqlParameter("@username", strname));
// , MD5
cmd.Parameters.Add(new SqlParameter("@userpwd", System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(strpwd, "MD5")));
dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
//
if (dr.Read())
{
// , asp.net cookie
// Cookie ,
HttpCookie cookie = new HttpCookie("username", strname);
if (this.CheckBox1.Checked)
{
// cookie
cookie.Expires = DateTime.Now.AddMonths(1);
// cookies
this.Response.Cookies.Add(cookie);
}
// 3 , html mate
this.Response.AppendHeader("refresh", "3;url=DataListDemo1.aspx");
}
else
{
this.Response.Write("username or password are wrong!");
}
conn.Close();
}
}
まとめ:最近行われたMVCプロジェクトでは、Htmlで共通のページを作成したり、半分のページを作成したりしていますが、このようにカスタムコントロールのように見えますが、実際には、ユーザーコントロールはずっと使用されていません.
だけじゃないNetは、Javaでも似たような概念があるはずですが、includeで他のページが含まれているので、具体的には分かりませんが、これからjavaをするとひっくり返すことができます.