日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Dart.Powerweb.livecontrols应用

發布時間:2025/3/14 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Dart.Powerweb.livecontrols应用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

Dart.Powerweb.livecontrols是個非常不錯利用javascript實現無刷新的控件集。
這個控件集的使用,大家可以參照他的幫助手冊,

PowerWEB LiveControls for ASP.NET

一項Ajax技術,使用回調來訪問服務器方功能,不用重載瀏覽器頁面。無需編寫JavaScript,就可以輕松創建DHTML Internet程序。

有了LiveControls,在向服務器置入數據時,Web應用程序不再閃爍……,購物車程序使用服務器方資源動態確認顧客信息、清單、物品價格、折扣等;財經軟件更新匯率時不再閃動;運動軟件實時更新比賽成績……所有這一切,僅僅通過拖放ASP.NET控件即可實現(無需Java applets,Flash或JavaScript編碼)。

PowerWEB LiveControls for ASP.NET含有21個Web控件,能夠使用服務器方回調,更新窗體單元,無需重載整個HTML頁面。該控件集可以直接取代許多標準的Microsoft控件,您可以操作客戶端對象或發送數據到客戶端,無需刷新頁面,不打擾用戶使用經歷。

特性:

無需編寫Java applets, Flash, JavaScript,就可以實現超級Windows效果;無需插件或ActiveX控件,就可以生成100% DHTML;
通過回調方法,無需重載頁面,就可以操作大多數頁面元素并在客戶端進行更新;
發起服務器方回調,類似熟悉事件,無需重載頁面;
雙程數據傳輸和刷新最小化,實現高性能應用程序;
透明支持下列瀏覽器:IE 5.0+, IE 5 Mac, Mozilla 1.3+ (FireFox, Netscape 6+), Mozilla 1.3+ Mac (FireFox, Netscape 6+), Galeon, Konqueror,Opera 5+;
對于不支持的瀏覽器,降級到標準ASP.NET postback;
避免JavaScript調試,簡化了代碼維護工作;
單個DLL文件提供全部內置的Web控件和腳本資源;
同所有已發布的.NET Framework(1.0,1.1,2.0)版本兼容;
服務器使用DataBind()時,LiveGrid, LiveListBox, LiveDropDownList控件可以自動更新客戶端;
LiveTimer控件能以任意時間間隔查詢服務器;
LiveSound控件通過從服務器方調用Play()方法播放聲音文件;
LiveMessageBox控件通過服務器方回調來顯示警告、確認或響應消息框;
LiveTextBox控件可以引發服務器方回調,甚至在發生時捕捉熱鍵;
LiveButton控件可以引發服務器方點擊事件,點擊后無需刷新就可以更新大多數控件;
LiveCallback控件可以捕捉客戶端事件到服務器方回調;
控件在客戶端能以批方式或非批方式工作;
其余鼠標、鍵盤和點擊事件也可以作為服務器方回調。

1. 如果我們想將LiveControls中的數據信息,取出來轉移到webcontrols上去的話,我們必須在微軟的webcontrols的html里面加入“LiveControlUpdate="true"”,這樣livecontrol和webcontrol就可以實現互動了。
2. 因為LiveDataGrid中沒有模版列,所以要實現在LiveDataGrid中添加入webcontrol的模版列。
html 代碼:
<cc1:livedatagrid id="LiveDataGrid1" style="Z-INDEX: 109; LEFT: 128px; POSITION: absolute; TOP: 200px"
?????runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False">
?????<Columns>
??????<cc1:LiveBoundColumn DataField="ProductID" SortExpression="ProductID" ReadOnly="True" HeaderText="ProductID"></cc1:LiveBoundColumn>
??????<asp:TemplateColumn SortExpression="ProductName">
???????<HeaderTemplate>
????????<b>Product Name</b>
???????</HeaderTemplate>
???????<ItemTemplate>
????????<asp:Label Text='<%# DataBinder.Eval(Container.DataItem, "ProductName").ToString().Trim() %>' runat="server" ID="Label3"/>
???????</ItemTemplate>
???????<EditItemTemplate>
????????<asp:TextBox id="ProductName" runat="server" Width="100px" Text='<%# DataBinder.Eval(Container.DataItem, "ProductName") %>'>
????????</asp:TextBox>
???????</EditItemTemplate>
??????</asp:TemplateColumn>
??????<asp:TemplateColumn SortExpression="QuantityPerUnit">
???????<HeaderTemplate>
????????<b>Quantity PerUnit</b>
???????</HeaderTemplate>
???????<ItemTemplate>
????????<asp:Label Text='<%# DataBinder.Eval(Container.DataItem, "QuantityPerUnit")%>' runat="server" ID="Label4"/>
???????</ItemTemplate>
???????<EditItemTemplate>
????????<asp:TextBox id="QuantityPerUnit" runat="server" Width="100px" Text='<%# DataBinder.Eval(Container.DataItem, "QuantityPerUnit")%>'>
????????</asp:TextBox>
???????</EditItemTemplate>
??????</asp:TemplateColumn>
??????<asp:TemplateColumn SortExpression="UnitsInStock">
???????<HeaderTemplate>
????????<b>Units In Stock</b>
???????</HeaderTemplate>
???????<ItemTemplate>
????????<asp:Label Text='<%# DataBinder.Eval(Container.DataItem, "UnitsInStock").ToString().Trim() %>' runat="server" ID="Label5"/>
???????</ItemTemplate>
???????<EditItemTemplate>
????????<asp:TextBox id="UnitsInStock" runat="server" Width="100px" Text='<%# DataBinder.Eval(Container.DataItem, "UnitsInStock").ToString().Trim() %>'>
????????</asp:TextBox>
???????</EditItemTemplate>
??????</asp:TemplateColumn>
??????<cc1:LiveButtonColumn Text="Select" HeaderText="Select" CommandName="Select"></cc1:LiveButtonColumn>
??????<cc1:LiveEditCommandColumn ButtonType="LinkButton" UpdateText="Update" CancelText="Cancel" EditText="Edit"></cc1:LiveEditCommandColumn>
??????<cc1:LiveButtonColumn Text="Delete" CommandName="Delete"></cc1:LiveButtonColumn>
?????</Columns>
????</cc1:livedatagrid>
后臺代碼:


if(!Page.IsPostBack)
???{
????this.bind("","");

????Session["tt"]="";
???}


??private void bind(string sortField, string sortDirection)
??{
???string sql="select * from Products";
???SqlConnection con = new SqlConnection("server=is-hezhou;uid=sa;pwd=sa;database=Northwind");
???
???if(sortField != "")
????sql+= " ORDER BY " + sortField;
???if(sortField != "" && sortDirection != "")
????sql+= " " + sortDirection;???
???
???
???SqlDataAdapter sda=new SqlDataAdapter(sql,con);
???DataSet ds=new DataSet();
???sda.Fill(ds);
???if(ds.Tables[0].Rows.Count==0)
???{
????return ;
???}
???else
???{
????this.LiveDataGrid1.DataSource=ds.Tables[0].DefaultView;
????this.LiveDataGrid1.DataBind();

???//?this.DataGrid1.DataSource=ds.Tables[0].DefaultView;
???//?this.DataGrid1.DataBind();
????
???}
???ds.Dispose();
???ds.Clear();
???sda.Dispose();
???con.Close();
???con.Dispose();
??}
private void DoCommand(string cmdText)
??{
???string connectionString = "server=is-hezhou;uid=sa;pwd=sa;database=Northwind";
???SqlConnection connection = new SqlConnection(connectionString);
???connection.Open();
???SqlCommand command = new SqlCommand(cmdText, connection);
???command.ExecuteNonQuery();
???connection.Close();
??}
??private void LiveDataGrid1_CancelCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
??{
???LiveDataGrid1.EditItemIndex = -1;
???this.bind("","");
??}

??private void LiveDataGrid1_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
??{?string key = e.Item.Cells[0].Text;
???DoCommand("delete Products where ProductID = " + key);
???this.bind("","");
??}

??private void LiveDataGrid1_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
??{
???this.LiveDataGrid1.EditItemIndex=e.Item.ItemIndex;
???this.bind("","");
???((TextBox)this.LiveDataGrid1.Items[e.Item.ItemIndex].Cells[1].FindControl("ProductName")).BorderStyle=BorderStyle.Double;
???((TextBox)this.LiveDataGrid1.Items[e.Item.ItemIndex].Cells[2].FindControl("QuantityPerUnit")).BorderStyle=BorderStyle.Dashed;
???((TextBox)this.LiveDataGrid1.Items[e.Item.ItemIndex].Cells[3].FindControl("UnitsInStock")).BorderStyle=BorderStyle.Dotted;
??}

??private void LiveDataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
??{
???LiveDataGrid1.CurrentPageIndex = e.NewPageIndex;
???this.bind("", "");

??}

??private void LiveDataGrid1_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
??{
????this.bind(e.SortExpression, "asc");?
??}

??private void LiveDataGrid1_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
??{
???// Get the new values from the controls
???string key = e.Item.Cells[0].Text;
???string prodName = ((TextBox)this.LiveDataGrid1.Items[e.Item.ItemIndex].Cells[1].FindControl("ProductName")).Text;
???string quantity = ((TextBox)this.LiveDataGrid1.Items[e.Item.ItemIndex].Cells[2].FindControl("QuantityPerUnit")).Text;
???string units = ((TextBox)this.LiveDataGrid1.Items[e.Item.ItemIndex].Cells[3].FindControl("UnitsInStock")).Text;

???// Run the query
???DoCommand("UPDATE Products Set ProductName = '" + prodName + "', QuantityPerUnit = '" + quantity + "', UnitsInStock = '" + units + "' WHERE ProductID = " + key);

???// Reset the EditItemIndex
???LiveDataGrid1.EditItemIndex = -1;

???// Rebind the grid to display the new values
???this.bind("", "");

??}

??private void LiveDataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
??{
???if(e.CommandName=="Select")
???{
????this.LiveTextBox1.Text=e.Item.Cells[2].Text.ToString();
???}
??}

轉載于:https://www.cnblogs.com/jacklaw/archive/2006/06/02/416121.html

總結

以上是生活随笔為你收集整理的Dart.Powerweb.livecontrols应用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。