使用region 和grid 進(jìn)行布局時只要設(shè)置個Height 和 AutoScroll="true"就好 這樣 就會按你想的需要的時候自動出現(xiàn)滾動條 同時 可以填充整個屏幕的寬度
如果不設(shè)置高度 那么grid 的高度會自動默認(rèn)為你第一次加載數(shù)據(jù)時 數(shù)據(jù)所占用的高度 如剛開始加載出來的只有三條 那么以后不管加載幾條 都只會出現(xiàn)三條 因?yàn)楦叨戎挥腥龡l的高度
<x:Region ID="Region2" Position="Center" ShowBorder="false" ShowHeader="false" runat="server"
AutoScroll="true" >
<Items>
<x:Grid runat="server" Title="管轄單位" AllowPaging="true" IsDatabasePaging="true" PageSize="29" >
使用數(shù)據(jù)綁定控件時 如使用dropdownlist 時 如果 dropFormula.DataTextField = "FormulaName";
dropFormula.DataValueField = "Id"; 指定的任何一個字段不存在時 控件顯示正常 不會報錯 但是你無論怎么選擇 都無法選中你要選的那個值 以后如果再發(fā)生這種莫名其妙的錯誤 要看一下綁定的字段是否真實(shí)存在。
彈出窗口要使用方法二 不要使用方法1去單獨(dú)設(shè)置屬性 入股使用方法一會post 兩次 而方法二只post 一次 速度快 也符合常理
方法一 window1.IFrameUrl = "AddDialog.aspx?Id=" + gridDistrict.Rows[gridDistrict.SelectedRowIndex].DataKeys[0];
window1.Title = "修改";
PageContext.RegisterStartupScript(window1.GetShowReference());
方法二
PageContext.RegisterStartupScript(window1.GetShowReference(string.Format("AddDialog.aspx?Id={0}&DistrictId={1}", id, districtId), "修改"));
使用 以下布局 不管怎么弄內(nèi)容都出不來 主要是因?yàn)?模板頁中 form里的div 沒有去掉 去掉之后就顯示正常 <x:RegionPanel ID="RegionPanel1" runat="server" ShowBorder="false">
母版頁應(yīng)是如下樣子才正確
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site.master.cs" Inherits="Huanwei.Web.Site" %>
<!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">
<asp:ContentPlaceHolder ID="head" runat="server">
</asp:ContentPlaceHolder>
</head>
<body style="margin: 10px;">
<form id="form1" runat="server">
<x:PageManager ID="PageManager2" AjaxLoadingType="Mask" runat="server" AjaxTimeout="600000" />
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</form>
</body>
</html>
使用彈出窗口時 如果需要彈出其它頁面 需要用 EnableIFrame="true" 否則什么都顯示不出來
在使用可編輯的grid的時候,EnableCheckBoxSelect=true 不起作用 就是沒有辦法顯示復(fù)選框 多選也無效 而且要進(jìn)行多個刪除 必須是先使用刪除按鈕假性刪除 刪除之后再通過另外一個按鈕如保存按鈕 點(diǎn)擊時才去真的刪除數(shù)據(jù)。 因?yàn)榈谝粋€刪除按鈕必須使用enablepostback=false。否則會出錯。
使用fineui的時候 以下這一句話一定要有 否則綁定grid 時老是出現(xiàn)未將對象引用設(shè)置實(shí)例 <x:PageManager runat="server" />
后臺可以直接調(diào)用grid中的控件
在grid 中如何實(shí)現(xiàn)一個按鈕實(shí)現(xiàn)兩個功能
前臺
<%-- CommandArgument='<%# Eval("State") %>' 這樣的調(diào)用在fineui控件里識別不了 除非使用模板 調(diào)用asp控件--%>
<x:LinkButtonField ConfirmTarget="Top" runat="server" HeaderText="操作" CommandName="importDelete" ColumnID="lbfImport" />
后臺
protected void Grid1_PreRowDataBound(object sender, FineUI.GridPreRowEventArgs e)
{}
2013-9-12 15:02
grid 在grid 中編輯 編輯后統(tǒng)一按鈕保存PJ_Apply.aspx 遇到不存 獲取不到正確的數(shù)據(jù)時 是因?yàn)?沒有給列設(shè)置ColumnID 設(shè)置一下就會正常 。但是保存之后紅色的標(biāo)志還在不知道是為什么 但官網(wǎng)的例子不會
如果彈出框與父頁面代碼在同一個頁面中完成 而彈出款又使用用戶控件,會導(dǎo)致不管怎么賦值給用戶控都賦不了值,還有一種情況就是如果父頁面有用戶控件 點(diǎn)父頁面的某個用于生成下載,要想給用戶控件賦值,必須在用戶控件中使用隱藏域存儲附的值
2013-8-23 firefox 下 水表用戶 原始水表 點(diǎn)擊修改出來的界面 用戶信息界面無法顯示 而修改記錄卻可以顯示不知道為什么 我就加了個 空的tab 標(biāo)簽上去 并將activeIndex設(shè)置為1 這樣就顯示出來了
gridviw 選擇框出不來因?yàn)闆]有設(shè)置DataKeyNames
導(dǎo)出第一遍可以導(dǎo)出 不刷新導(dǎo)第二遍時 倒不出來。暫時的解決辦法是導(dǎo)出前彈出對話框(由于彈出后 無法再導(dǎo)出之后關(guān)閉 所以這個后面需要解決)
string filename = eh.WriteTuikuanStatics(mblist, mplist);
string filepath = Server.MapPath("~/outputtuikuan/" + filename);
winexport.IFrameUrl = "form/export.aspx?filename=" + filename;
FineUI.PageContext.RegisterStartupScript(
winexport.GetShowReference());
原始水表 提交修改后 死活刷新不了頁面??待處理
1:用 <ext:Button 做按鈕時 里面的菜單用的是<Menu而不是 <ext:Menu
2: 使用<ext:RegionPanel 布局時 必須設(shè)定 <ext:PageManager ID="PageManager1" runat="server" AutoSizePanelID="RegionPanel1"/> 否則 內(nèi)容瀏覽頁面的時候 頁面空白
3:要想在內(nèi)容不溢出時不出現(xiàn)滾動條 溢出時出現(xiàn) 要對外圍框架設(shè)置(主要是給外圍框架設(shè)置一個高度) Layout="Fit" Height="200px"
4: 想不通過點(diǎn)擊加減符號來展開樹節(jié)點(diǎn) 而是希望直接點(diǎn)擊節(jié)點(diǎn)就展開 需要設(shè)置 node.SingleClickExpand = true; 觸發(fā)的事件是OnNodeExpand 而不是 OnNodeCommand
5 :不知道為什么 我 設(shè)置了 node.AutoPostBack = true 還是無法觸發(fā)是 OnNodeCommand事件
6:要設(shè)置延遲加載(點(diǎn)擊節(jié)點(diǎn)時才去加載子節(jié)點(diǎn)),要設(shè)置 AutoLeafIdentification="false"
7: <ext:Form 中使用用戶控件時 用戶控件必須同時放在一個Panel和UserControlConnector里 。如果只放在UserControlConnector 里的話 到時候頁面會加載不出來 一直在那邊轉(zhuǎn),同時設(shè)置的Label 顯示不出來
(但在SimpleForm中不用加Panel也 可以正常顯示
<ext:Panel ID="Panel1" runat="server" BoxMargin="0 0 0 0" BodyPadding="0px" ShowBorder="false"
ShowHeader="false" Title="Panel">
<Items>
<ext:UserControlConnector ID="UserControlConnector1" runat="server">
<uc1:DropPJType ID="DropPJType1" runat="server" IsReadOnly="false" />
</ext:UserControlConnector>
</Items>
</ext:Panel>
8:DropDownList 設(shè)置成ReadOnly =true 時 那個下拉列表出不來(變成了一個只讀文框)
9:前臺綁定后臺變量。<%# %> 這種方式可以綁定服務(wù)器控件和客戶端控件 并且后臺要 Page.DataBind(); <%= %> 這種方式只能用于綁定客戶端控件
前臺用 Text="<%# SystemParameter.CurrentYear.ToString() %>"
后臺需要
if (!IsPostBack)
{
Page.DataBind();
}
2013 12 20
<x:Label runat="server" ID="labAcc" Text="<%# acc.AccStr %>"></x:Label> 這樣子對fineui控件綁定沒有用要對Asp控件綁定才有用
<%= acc.AccStr %> 也是對fineui控件綁定沒有用要對Asp控件綁定才有用
10:版本升級到3.3 老項(xiàng)目不需要修改 web.config,不需要修改代碼
只需要替換FineUI.dll,然后拷貝一個生成好的 extjs 目錄到根目錄即可??!
下載地址 http://fineui.com/bbs/forum.php?mod=viewthread&tid=3218 (登錄之后 可以下載博主已經(jīng)生成好的東西)
10:tab1假設(shè)切換到tab2 之前 你希望只有Tab1中的信息保存之后 才能跳到tab2 這個要怎么做呢? 可以用一個隱藏控件標(biāo)識tab1 信息是否保存,然后再根據(jù)此字段判斷是否enbaled tab2 。同時 tab1 中的保存按鈕要有如下代碼 PageContext.RegisterStartupScript(String.Format("this.__doPostBack();")); 才行。若果是彈出窗要控制父窗體的tab 可以將this改成Parent 如果要將參數(shù)傳回可以放在在doPostBack的括號中
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
}
//記住是在 !IsPostBack 外判斷哦
if (string.IsNullOrEmpty(this.hidenHeXiaoID.Text))
{
this.tabDetail.Enabled = false;
}
else { this.tabDetail.Enabled = true; }
}
前臺
<%-- <script src="../../Scripts/jquery-1.4.4.min.js" type="text/javascript"></script>--%>
<script type="text/javascript">
//此方法用余后臺使用如下語句時使用 FineUI.PageContext.RegisterStartupScript(Confirm.GetShowReference("要刪除該類型已導(dǎo)入的文件和數(shù)據(jù)嗎?刪除后可以重新導(dǎo)入數(shù)據(jù)。", "消息", MessageBoxIcon.Warning, "deleteImport(" + row.DataKeys[1] + ")", ""));
//此方法有缺陷,刪除數(shù)據(jù)后會刷新整個頁面,除非再用js去動態(tài)更改頁面對應(yīng)的變化信息。
var _plantCode;
var _category;
function deleteImport(category) {
this._category = category;
_plantCode = "<%=dropPlant.SelectedValue %>";
var url = "../ashx/DataImport.ashx";
url += "?action=DeleteImport&plantCode=" + _plantCode + "&category=" + _category;
// if(confirm("要刪除該類型已導(dǎo)入的文件和數(shù)據(jù)嗎?刪除后可以重新導(dǎo)入數(shù)據(jù)。"))
// {
$.post(url,
function (data) {
if (data == "ok") {
alert("導(dǎo)入數(shù)據(jù)已刪除");
location.href = "DataImport.aspx?plantCode=" + _plantCode;
}
else {
alert(data);
}
});
// }
}
</script>
后臺
//此句用于 當(dāng)使用前臺js post 調(diào)用ashx中的方法時使用
//FineUI.PageContext.RegisterStartupScript(Confirm.GetShowReference("要刪除該類型已導(dǎo)入的文件和數(shù)據(jù)嗎?刪除后可以重新導(dǎo)入數(shù)據(jù)。", "消息", MessageBoxIcon.Warning, "deleteImport(" + row.DataKeys[1] + ")", ""));
聯(lián)系客服