国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

可以搜索的ComboBox----

可以搜索的ComboBox----

更新時間:2022-04-28 文章作者:未知 信息來源:網絡 閱讀次數:

在.Net的技術論壇里,有一次看到了某網友發了個帖子,大概的意思就是:假如數據庫中有很多的記錄讀取到ComboBox中,恰好是大于1000條記錄,如果要選擇其中第500條記錄,那不得煩死了啊?所以,最好是輸入代碼或者其他的助記符號就馬上可以找到那條記錄.

為此,我作了一個控件SearchComboBox.由于本人表達能力有限,不怎么好,就直接開始程序了

首先,建立一個項目Hexudong_ComboBox

然后添加一個類ItemName,具體代碼如下

ItemName.cs

using System;

namespace Hexudong_ComboBox
{
/// <summary>
/// ItemName 的摘要說明。
/// </summary>
public class ItemName:object
{
private long _ID;
private string _Code;
private string _Name;
private string _PinYinCode;
private string _WuBiCode;
private string _DefineCode;
private string _Text;

public ItemName()
{
//
// TODO: 在此處添加構造函數邏輯
//
}

public ItemName(long id,string code,string name)
{
_ID=id;
_Code=code;
_Name=name;
_Text=_Code + " " + _Name;
}

public ItemName(long id,string code,string name,string pinyincode,string wubicode)
{
_ID=id;
_Code=code;
_Name=name;
_PinYinCode=pinyincode;
_WuBiCode=wubicode;
_Text=_Code + " " + _Name;
}

public ItemName(long id,string code,string name,string pinyincode,string wubicode,string definecode)
{
_ID=id;
_Code=code;
_Name=name;
_PinYinCode=pinyincode;
_WuBiCode=wubicode;
_DefineCode=definecode;
_Text=_Code + " " + _Name;
}

/// <summary>
/// ID號
/// </summary>
public long ID
{
get
{
return _ID;
}
set
{
_ID=value;
}
}

/// <summary>
/// 代碼
/// </summary>
public string Code
{
get
{
return _Code;
}
set
{
_Code=value;
}
}

/// <summary>
/// 名稱
/// </summary>
public string Name
{
get
{
return _Name;
}
set
{
_Name=value;
}
}

/// <summary>
/// 拼音碼
/// </summary>
public string PinYinCode
{
get
{
return _PinYinCode;
}
set
{
_PinYinCode=value;
}
}

/// <summary>
/// 五筆碼
/// </summary>
public string WuBiCode
{
get
{
return _WuBiCode;
}
set
{
_WuBiCode=value;
}
}

/// <summary>
/// 自定義碼
/// </summary>
public string DefineCode
{
get
{
return _DefineCode;
}
set
{
_DefineCode=value;
}
}

/// <summary>
/// 控件文本
/// </summary>
public string Text
{
get
{
return _Text;
}
set
{
_Text = value;
}
}

/// <summary>
/// 重寫ToString方法
/// </summary>
/// <returns></returns>
public override string ToString()
{
return _Text;
}
}
}


再添加一個類SearchComboBox,具體的代碼如下:

SearchComboBox.cs

using System;
using System.Windows.Forms;
using System.Drawing;

namespace Hexudong_ComboBox
{
/// <summary>
/// SearchCombBox 的摘要說明。
/// </summary>
public class SearchComboBox:System.Windows.Forms.ComboBox
{
public SearchComboBox()
{
//
// TODO: 在此處添加構造函數邏輯
//
DrawMode = DrawMode.OwnerDrawFixed;
}

//根據輸入文本框內容的Code查找相應的名稱值并顯示為代碼+名稱的字符串
protected override void OnKeyPress(KeyPressEventArgs e)
{
if(e.KeyChar==(char)13)
{
foreach(object obj in Items)
{
ItemName item=(ItemName)obj;
if(item.Code.Trim()==Text.Trim())
{
SelectedItem=item;
Text=item.Code + " " + item.Name;
break;
}
}
}
base.OnKeyPress (e);
}

//失去焦點
protected override void OnLostFocus(EventArgs e)
{
GetText(false);
base.OnLostFocus (e);
}

//得到焦點
protected override void OnGotFocus(EventArgs e)
{
GetText(true);
base.OnGotFocus (e);
}

//選擇項改變
protected override void OnSelectedIndexChanged(EventArgs e)
{
GetText(true);
base.OnSelectedIndexChanged (e);
}

/// <summary>
/// 失去焦點,得到焦點,選擇變化時的文本內容
/// </summary>
/// <param name="Focused">是否聚焦,主要區別于OnLostFocus事件</param>
/// <returns></returns>
private string GetText(bool Focused)
{
if(SelectedItem!=null)
{
ItemName item=(ItemName)SelectedItem;
if(Focused)
{
Text=item.Code + " " + item.Name;
SelectAll();
}
else
{
Text=item.Name;
}
}
else
{
Text="";
}
return Text;
}

//重畫下拉子項的內容,主要是賦文本內容
protected override void OnDrawItem(DrawItemEventArgs e)
{
e.DrawBackground();
e.DrawFocusRectangle();

if (e.Index < 0)
e.Graphics.DrawString("", e.Font,
new SolidBrush(e.ForeColor), e.Bounds.X, e.Bounds.Y);
else
{
if (Items[e.Index].GetType() == typeof(ItemName))
{
ItemName item = (ItemName)Items[e.Index];
e.Graphics.DrawString(item.Text ,
e.Font,new SolidBrush(e.ForeColor),e.Bounds.X,e.Bounds.Y);
}
else
{
e.Graphics.DrawString("",
e.Font, new SolidBrush(e.ForeColor), e.Bounds.X, e.Bounds.Y);

}
}
base.OnDrawItem (e);
}

/// <summary>
/// 設置或獲取選擇項的ID號
/// </summary>
public long SelectedID
{
get
{
if(SelectedItem!=null)
{
ItemName item=(ItemName)SelectedItem;
return item.ID;
}
else
{
return -1;
}
}
set
{
int i=0;
foreach(object obj in Items)
{
ItemName item=(ItemName)obj;
if(item.ID==value)
{
SelectedItem=item;
Text=item.Code + " " + item.Name;
break;
}
if(i==Items.Count-1)
{
SelectedItem=null;
Text="";
}
i++;
}
}
}

/// <summary>
/// 設置或獲取選擇項的代碼
/// </summary>
public string SelectedCode
{
get
{
if(SelectedItem!=null)
{
ItemName item=(ItemName)SelectedItem;
return item.Code;
}
else
{
return "";
}
}
set
{
int i=0;
foreach(object obj in Items)
{
ItemName item=(ItemName)obj;
if(item.Code.Trim()==value.Trim())
{
SelectedItem=item;
Text=item.Code + " " + item.Name;
break;
}
if(i==Items.Count-1)
{
SelectedItem=null;
}
i++;
}
}
}

/// <summary>
/// 設置或獲取選擇項的名稱
/// </summary>
public string SelectedName
{
get
{
if(SelectedItem!=null)
{
ItemName item=(ItemName)SelectedItem;
return item.Name;
}
else
{
return "";
}
}
set
{
int i=0;
foreach(object obj in Items)
{
ItemName item=(ItemName)obj;
if(item.Name.Trim()==value.Trim())
{
SelectedItem=item;
Text=item.Code + " " + item.Name;
break;
}
if(i==Items.Count-1)
{
SelectedItem=null;
}
i++;
}
}
}
}
}


最后,編譯成類庫Hexudong_ComboBox.dll

下面來測試一下剛作的Hexudong_ComboBox.dll

另外建立一個測試的項目,然后把這個Hexudong_ComboBox.dll添加到工具箱中

拖一個到測試界面Form1上,然后,就可以在代碼中添加數據到SearchComboBox中

Form1.cs中的部分代碼

.........

using Hexudong_ComboBox;

.........



private void Form1_Load(object sender, System.EventArgs e)
{
this.searchComboBox1.Items.Clear();
Users objUsers=new UsersS().GetUsers();
foreach(User objUser in objUsers)
{
this.searchComboBox1.Items.Add(new ItemName(objUser.ID,objUser.Code,objUser.Name));
}

........

聚焦的時候是這樣的:



失焦的時候是這樣的:



如果你輸入003,然后敲回車,那么會出現



好了,實現了功能,結束了

當然,本人還是在學習階段,或許上面的代碼寫的不怎么好,希望指正.有些功能還不夠強,請擴

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

  • <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        欧美一区在线视频| 狠狠狠色丁香婷婷综合久久五月| 欧美专区亚洲专区| 欧美日韩激情一区二区三区| 日韩一区二区免费视频| 久久久综合精品| 中文字幕成人av| 日韩av一区二区在线影视| 国产不卡在线一区| 51精品久久久久久久蜜臀| 欧美成人a∨高清免费观看| 亚洲欧美自拍偷拍| 国内久久精品视频| 2021中文字幕一区亚洲| 丝袜美腿一区二区三区| 成人在线视频一区二区| 欧美日韩精品一区二区三区蜜桃 | 91视频一区二区| 欧美刺激午夜性久久久久久久| 国产精品区一区二区三| 国产乱人伦偷精品视频免下载| 欧美视频日韩视频在线观看| 国产精品美日韩| 欧美在线观看一区| 久久99久久久欧美国产| 制服丝袜一区二区三区| 国产一区二区剧情av在线| 欧美肥胖老妇做爰| 亚洲二区视频在线| 91视频观看免费| 日韩av电影免费观看高清完整版 | 成人黄色大片在线观看| 久久人人爽人人爽| 91高清在线观看| 一区二区三区丝袜| 色综合色综合色综合| 中文字幕一区二区三区在线播放 | 91精品91久久久中77777| 青草av.久久免费一区| 欧美精品tushy高清| 成人激情图片网| 毛片一区二区三区| 精品国产一区二区三区忘忧草| 丝袜美腿亚洲一区| 国产精品福利在线播放| 国产99久久久久| 日韩国产精品久久久| 亚洲精品国产精品乱码不99| 欧美亚洲一区三区| a亚洲天堂av| 亚洲v精品v日韩v欧美v专区| 欧美一区二区三区小说| 日本韩国欧美一区二区三区| 成人h动漫精品一区二| 成人一区二区三区视频| 国产成人精品一区二区三区四区| 国产精品国产三级国产普通话三级 | 在线这里只有精品| 99久久99久久精品免费看蜜桃| 一区二区三区精品| 中文字幕中文字幕中文字幕亚洲无线| 久久亚洲综合色一区二区三区| 日韩色在线观看| 欧美一级淫片007| 精品国产一区二区亚洲人成毛片| 日韩欧美你懂的| 欧美成人官网二区| 亚洲精品一线二线三线无人区| 日韩视频一区二区三区| 日韩欧美亚洲一区二区| 久久久久免费观看| 久久久激情视频| 亚洲国产精品精华液2区45| 中文欧美字幕免费| 亚洲女同一区二区| 久久久久久久国产精品影院| 精品国产在天天线2019| 久久久99久久| 91精品国产综合久久久蜜臀粉嫩 | 亚洲欧美一区二区不卡| 亚洲曰韩产成在线| 久久久久久久久免费| 国产精品乱码一区二区三区软件 | 久久亚洲精品国产精品紫薇| 中文字幕免费不卡在线| 亚洲欧美国产高清| 日韩电影在线观看网站| 国产揄拍国内精品对白| 一本色道久久加勒比精品 | 精品国产乱码久久久久久免费 | 91在线视频在线| 欧美日韩精品一区视频| 久久精品亚洲乱码伦伦中文| 亚洲综合无码一区二区| 国内精品伊人久久久久影院对白| 波多野结衣亚洲| 欧美肥胖老妇做爰| 最新不卡av在线| 国产精品久久久99| 天天爽夜夜爽夜夜爽精品视频| 亚洲色图另类专区| 日韩高清在线电影| 成人精品视频一区二区三区尤物| 欧美日韩免费在线视频| 色婷婷综合久久久中文一区二区| 欧美美女网站色| 成人免费一区二区三区在线观看| 免费在线观看一区| 日本道免费精品一区二区三区| 精品动漫一区二区三区在线观看| 一区二区三区四区蜜桃 | 精品一区二区三区的国产在线播放| 亚洲欧美另类图片小说| 蜜乳av一区二区三区| 色香蕉成人二区免费| 欧美高清在线精品一区| 日本一不卡视频| 欧美主播一区二区三区美女| 国产精品午夜春色av| 国产一区欧美一区| 欧美一级久久久| 偷偷要91色婷婷| 在线视频观看一区| 亚洲欧美日韩系列| av电影一区二区| 国产色产综合产在线视频| 激情丁香综合五月| 日韩欧美国产1| 男人操女人的视频在线观看欧美| 欧美日韩一区在线| 亚洲电影第三页| 欧美日本乱大交xxxxx| 亚洲高清不卡在线| 91精品国产91久久久久久最新毛片| 亚洲第一综合色| 日韩一区二区影院| 另类专区欧美蜜桃臀第一页| 欧美电视剧在线观看完整版| 国产一区美女在线| 久久久精品日韩欧美| 国产成人在线免费| 国产精品家庭影院| 欧美午夜片在线看| 日本美女一区二区| 欧美精品一区二区三区在线| 国产乱码精品一区二区三区五月婷| 久久精品夜色噜噜亚洲aⅴ| 成人av影视在线观看| 亚洲情趣在线观看| 欧美四级电影在线观看| 日日摸夜夜添夜夜添国产精品| 欧美一区二区视频在线观看 | 国产日韩精品一区二区三区 | 亚洲欧美日韩在线播放| 欧美午夜精品一区二区蜜桃| 亚洲国产精品久久一线不卡| 欧美日韩电影在线| 国内成人自拍视频| 日本一区二区三区电影| 91论坛在线播放| 天堂一区二区在线| 久久久久久久精| 欧美色爱综合网| 国产一二精品视频| 一区二区三区四区av| 精品国产免费一区二区三区四区 | 亚洲国产精品一区二区www | 亚洲一卡二卡三卡四卡无卡久久| 欧美日韩一二三| 国产乱子轮精品视频| 亚洲精选免费视频| 日韩免费高清电影| 色综合久久88色综合天天免费| 丝袜美腿亚洲一区二区图片| 国产视频一区在线播放| 欧美日韩成人综合| 成人黄色在线视频| 久久99精品国产.久久久久| 国产精品美女久久久久久2018| 在线综合+亚洲+欧美中文字幕| 成人h版在线观看| 狠狠色丁香婷综合久久| 亚洲五码中文字幕| 国产精品电影一区二区三区| 日韩免费观看2025年上映的电影 | 欧美精品777| 99久久久无码国产精品| 精品在线播放午夜| 午夜天堂影视香蕉久久| 国产精品国产三级国产普通话蜜臀| 欧美一级爆毛片| 欧美性色aⅴ视频一区日韩精品| 国产乱一区二区| 日本不卡一区二区三区高清视频| 亚洲色图视频免费播放| 国产偷国产偷亚洲高清人白洁| 日韩一区二区高清| 91精品国产综合久久久久久久久久| 色欧美日韩亚洲| 色婷婷综合久久久中文字幕|