瀏覽次數: 627316

  • 新增的webDataSource無法使用SetWhere?
    如果WebDataSource是連接WebDataSet,請在Page_Load事件中加入
    WebDataSource.DataSource = WebDataSet,如果WebDataSource是使用SelectCommand,請確認WebDataSource.SelectCommand屬性有設值。




  • 如何實現二個以上的欄位的重複檢查功能?
    如果是多個key欄位的組合,直接設定DefaultValidate的DuplicateCheck和DuplicateCheckMode屬性就可以了,如果是Master設定為ByWhere,如果是Detail則設定為ByLocal。
    如果不是key的欄位組合,可以在DefaultValidate中定義某一個代表性欄位,使用Validate自定義方法,如定一個MyCheck的方法,將訊息設定為”該資料已經重覆”,程式如下:
    Public bool MyCheck(Object var)
    { String s=var.ToString();
    DataSet ds = InfoDataSet1.Execute("select count (*) from Yourtable where Yourkey=’"+s+”’”);
    if (Convert.ToInt16(ds.Tables[0].Rows[0][0]) > 0)
    {

    return false;
    }
    else
    {
    return true;
    }
    }




  • 請問WebValidate可以檢查欄位的字數嗎?例如此欄位只能輸入10個byte,超過就顯示訊息,有這功能嗎?
    可以使用自定義方法實現,如CheckBytes();
    public bool CheckBytes(string value)
    {
    if(value.Length > 10)//如果是英文可以使用這個方法,中文的話要根據編碼不同另行考慮
    {
    return false;
    }
    }




  • 怎樣對GridView內的新增、修改、刪除按鈕做管控?
    提供兩種方法供參考:
    1.使用WebSecurity元件,直接對WebDataSource進行權限控制,進而達到對各輸入元件的控制。
    2. 自己寫程式實現。
    如在GridViewRowDataBound事件中,您可以通過如下程式設定是否顯示相應的button.
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
    if (不能編輯) // 設定當什麼條件下, 要隱藏Button
    {
    (e.Row.Cells[0].FindControl("ImageButton1") as ImageButton).Visible = false;
    }
    }




  • 如何在WebForm 在按下存檔後自動計算特定某個欄位的值?
    有兩個方法可以達到這些要求,如下:
    1. 如果此欄位在Web頁面上有配合的元件可顯示,可以直接在元件的事件中設計,比如在WebFormView中顯示時可以在ItemUpdating事件(edit的時候),ItemInserting(新增的時候):
    e.Values["fieldname"] = yourvalue;
    如果在WebGridView中顯示時,可以在RowUpdating事件(edit的時候),RowInserting(新增的時候):
    e.NewValues["fieldname"] = yourvalue;

    這樣可以即時顯示新的內容.如果無需另外更新顯示。
    2. 您可以直接在Server端的UpdateComp的FieldAttrs中設定欄位的預設值,或者直接在UpdateComp的BeforeApply事件中直接執行:
    UpdateComp.SetFieldValue("fieldname", value);

    這個方式可以在Server端直接控制要存入資料庫的最後結果。




  • 如何在EEP設計全域變數
    WebForm可以使用HttpContext.Current.Session來保存全域變數,如下:
    HttpContext.Current.Session["var"] = value;
    讀值: object obj = HttpContext.Current.Session["var"]
    "var"是Session的變數。
  • 如何在登入後的頁面中去掉或隱藏TreeView菜單?
    可以在WebClientMain.aspx內Source中的Body中添加:
    onload="IMG1_onclick(document.getElementById('IMG1')),就可以在登錄的時候,將TreeView向左隱藏。