1.Demo下載:
文本框?qū)崿F(xiàn)內(nèi)容提示(仿Google、Baidu).rar
2.創(chuàng)建數(shù)據(jù)庫、表(我用的sqlserver2008數(shù)據(jù)庫)
3.創(chuàng)建自定義函數(shù)
4.asp.net前臺頁面(需要添加2個(gè)引用:AjaxControlToolkit.dll,AutoCompleteExtra.dll)
%@ Register Assembly="AutoCompleteExtra" Namespace="AutoCompleteExtra" TagPrefix="cc1" %>
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
html xmlns="http://www.w3.org/1999/xhtml">
head runat="server">
title>/title>
style type="text/css">
.searchTextBox
{
border: 1px solid #e1e1e1;
border-collapse: separate;
border-spacing: 0;
padding: 2px 2px 2px 2px;
white-space: nowrap;
margin-left: 2px;
height: 28px;
line-height: 28px;
margin-right: 5px;
font-family: 微軟雅黑,宋體;
font-size: 14px;
}
/style>
/head>
body>
form id="form1" runat="server">
asp:ScriptManager ID="ScriptManager1" runat="server">
/asp:ScriptManager>
asp:UpdatePanel ID="UpdatePanel1" runat="server">
ContentTemplate>
div>
div class="dd2">
請輸入姓名: asp:TextBox CssClass="searchTextBox" runat="server" ID="txtCompanyName" Style="width: 280px;">/asp:TextBox>
cc1:AutoCompleteExtraExtender ID="AutoCompleteExtraExtender1" runat="server" ServiceMethod="GetCompanyNameList"
TargetControlID="txtCompanyName" AsyncPostback="false" UseContextKey="True" AutoPostback="false"
MinimumPrefixLength="1" CompletionInterval="10">
/cc1:AutoCompleteExtraExtender>
/div>
/div>
/ContentTemplate>
/asp:UpdatePanel>
/form>
/body>
/html>
5.后臺頁面
namespace WebApplication1
{
public partial class TextBoxAuto : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
[System.Web.Services.WebMethodAttribute(), System.Web.Script.Services.ScriptMethodAttribute()]
public static string[][] GetCompanyNameList(string prefixText, int count, string contextKey)
{
//獲取自動(dòng)完成的選項(xiàng)數(shù)據(jù)
Liststring[]> list = new Liststring[]>();
Liststring> nameList = new Liststring>();
Liststring> idList = new Liststring>();
CeshiManage ceshimanage = new CeshiManage();
ceshimanage.GetTopUserName(count, prefixText.ToUpper(), out idList, out nameList);
for (int i = 0; i nameList.Count; i++)
{
string[] Respuesta = new string[2];
Respuesta[0] = nameList[i];
Respuesta[1] = idList[i];
list.Add(Respuesta);
}
return list.ToArray();
}
}
}
using System.Data;
using Oceansoft.Net.Dal;
namespace Oceansoft.Net.Bll
{
/// summary>
/// :ceshi
/// :jibp
/// :2014-2-27 15:52:15
////summary>
public class CeshiManage
{
private SqlQuery m_sqlquery = Oceansoft.Net.Dal.DB.Select().From(Ceshi.Schema);
/// summary>
/// Ceshi查詢器
/// /summary>
public SqlQuery CeshiSelecter
{
get { return m_sqlquery; }
set { m_sqlquery = value; }
}
/// summary>
/// 構(gòu)造函數(shù),設(shè)置查詢器
////summary>
public CeshiManage()
{
m_sqlquery = m_sqlquery.Where("id").IsNotEqualTo("");
}
#region Ceshi管理
/// summary>
/// 獲取ceshi列表
/// /summary>
/// returns>/returns>
public ListCeshi> getCeshiList()
{
return CeshiSelecter.ExecuteTypedListCeshi>();
}
/// summary>
/// 獲取ceshi列表,同時(shí)分頁操作
/// /summary>
/// returns>/returns>
public ListCeshi> getCeshiList(int currentPage, int pageSize, out int RecordCount)
{
RecordCount = m_sqlquery.GetRecordCount();
return CeshiSelecter
.Paged(currentPage, pageSize)
.ExecuteTypedListCeshi>();
}
/// summary>
/// 新增 ceshi
/// /summary>
/// param name="HandleEntity">/param>
/// param name="sErr">/param>
/// returns>/returns>
public bool AddCeshi(Ceshi beAddMode, out string sErr)
{
sErr = "";
bool bRet = true;
try
{
using (TransactionScope sc = new TransactionScope())
{
//此處寫代碼
//流水編號的生成
//GenerateNo No = new GenerateNo();
//No.TableName = "Ceshi"; //表名
//No.NoName = "XXX"; //流水號前字母
//No.ColName = "CC_Number"; //編號字段
//No.CreateTime = "CC_CreateTime"; //日期字段
//string BillNo = "";
//Customer_Comp.CC_Number = No.AutoGenerateNo();
beAddMode.IsNew = true;
beAddMode.Save();
//LogHelper.WriteLog(logType.新增 , logModule.Deptrelation,"ceshi新增成功("+beAddMode.GetPrimaryKeyValue().ToString()
//+")!");
//如果生成擴(kuò)展類請使用add方法方法
sc.Complete();
}
}
catch (Exception ex)
{
sErr = "ceshi新增不成功!";
return false;
}
sErr = "ceshi新增成功!";
return bRet;
}
/// summary>
/// 修改 ceshi
/// /summary>
/// param name="HandleEntity">/param>
/// param name="sErr">/param>
/// returns>/returns>
public bool UpdataCeshi(Ceshi beUpdataMode, out string sErr)
{
sErr = "";
bool bRet = true;
try
{
using (TransactionScope sc = new TransactionScope())
{
//如果生成擴(kuò)展類請使用Update()方法方法
beUpdataMode.IsNew = false;
beUpdataMode.Save();
//LogHelper.WriteLog(logType.修改 , logModule.Deptrelation,"ceshi修改成功("+beUpdataMode.GetPrimaryKeyValue().ToString()
//+")!");
sc.Complete();
}
}
catch (Exception ex)
{
sErr = "ceshi修改不成功!";
return false;
}
sErr = "ceshi修改成功!";
return bRet;
}
/// summary>
/// 刪除 ceshi
/// /summary>
/// param name="HandleEntity">/param>
/// param name="sErr">/param>
/// returns>/returns>
public bool DeleteCeshi(Ceshi beDeleteMode, out string sErr)
{
sErr = "";
bool bRet = true;
try
{
using (TransactionScope sc = new TransactionScope())
{
//如果生成擴(kuò)展類請使用Delete()方法方法
Ceshi.Delete(beDeleteMode.GetPrimaryKeyValue());
//LogHelper.WriteLog(logType.刪除 , logModule.Deptrelation,"ceshi刪除成功("+beDeleteMode.GetPrimaryKeyValue().ToString()
//+")!");
sc.Complete();
}
}
catch (Exception ex)
{
sErr = "ceshi刪除不成功!";
return false;
}
sErr = "ceshi刪除成功!";
return bRet;
}
/// summary>
/// 刪除 ceshi 列表
/// /summary>
/// param name="HandleEntity">/param>
/// param name="sErr">/param>
/// returns>/returns>
public bool DeleteCeshiList(ListCeshi> lstCeshi, out string sErr)
{
sErr = "";
int ii = 0;
bool bRet = true;
try
{
using (TransactionScope sc = new TransactionScope())
{
//如果生成擴(kuò)展類請使用Delete()方法方法
foreach (Ceshi bedelmode in lstCeshi)
{
ii++;
Ceshi.Delete(bedelmode.GetPrimaryKeyValue());
//LogHelper.WriteLog(logType.刪除 , logModule.Deptrelation,"ceshi刪除成功("+bedelmode.GetPrimaryKeyValue().ToString()
//+")!");
}
sc.Complete();
}
}
catch (Exception ex)
{
sErr = "ceshi刪除不成功!";
return false;
}
sErr = "共" + ii.ToString() + "條單據(jù)刪除成功!";
return bRet;
}
public void GetTopUserName(int topCount, string name, out Liststring> listId, out Liststring> listcname)
{
string sql = string.Format(@"Select id,cname from(Select ROW_NUMBER() over(order by cname)as ROWNUM," +
"id,cname FROM [dbo].[Ceshi] where cname like '%" + name + "%' or dbo.f_GetPy(cname) like '%" + name + "%') as ta where ta.ROWNUM = " + topCount);
DataTable dt = new DataTable();
QueryCommand qc = new InlineQuery().GetCommand(sql);
dt = DataService.GetDataSet(qc).Tables[0];//將查詢出來的數(shù)據(jù)集放到List中去(查詢數(shù)據(jù)的方法,有很多,這邊我用的是Subsonic類自帶的查詢方法)
listcname = new Liststring>();
listId = new Liststring>();
foreach (DataRow row in dt.Rows)
{
listId.Add(row[0].ToString());
listcname.Add(row[1].ToString());
}
}
#endregion
}
}
7.webconfig配置
!--
有關(guān)如何配置 ASP.NET 應(yīng)用程序的詳細(xì)信息,請?jiān)L問
http://go.microsoft.com/fwlink/?LinkId=169433
-->
configuration>
configSections>
section name="SubSonicService" type="SubSonic.SubSonicSection, SubSonic" requirePermission="false"/>
/configSections>
connectionStrings>
add name="DemoTo" connectionString="Data Source=172.17.118.197;Initial Catalog=DemoTo;User Id=sa;Password=password01!;" providerName="System.Data.SqlClient"/>
/connectionStrings>
SubSonicService defaultProvider="DemoTo">
providers>
add name="DemoTo" type="SubSonic.SqlDataProvider, SubSonic" connectionStringName="DemoTo" generatedNamespace="Oceansoft.Net" maxPoolSize="2000"/>
/providers>
/SubSonicService>
system.web>
compilation debug="true" targetFramework="4.0" />
authentication mode="Forms">
forms loginUrl="~/Account/Login.aspx" timeout="2880" />
/authentication>
membership>
providers>
clear/>
add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationServices"
enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false"
maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10"
applicationName="/" />
/providers>
/membership>
profile>
providers>
clear/>
add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/"/>
/providers>
/profile>
roleManager enabled="false">
providers>
clear/>
add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="ApplicationServices" applicationName="/" />
add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/" />
/providers>
/roleManager>
/system.web>
system.webServer>
modules runAllManagedModulesForAllRequests="true"/>
/system.webServer>
/configuration>
標(biāo)簽:延安 焦作 宜春 曲靖 黃南 大興安嶺 綿陽 新疆
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《.Net 文本框?qū)崿F(xiàn)內(nèi)容提示的實(shí)例代碼(仿Google、Baidu)》,本文關(guān)鍵詞 .Net,文本,框,實(shí)現(xiàn),內(nèi)容,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。