none
子頁面中修改主版頁面中WebDataWindow屬性 RRS feed

  • 問題

  • 一個專案,有兩個頁面分別由WebDataWindow連結不同資料表,而 WebDataWindow 包含在主版頁面 DataWindowSite.Master 中,子頁面為 FormA.aspx  ,   FomrB.aspx 

    希望這兩個頁面顯示不同資料表,在子頁面中有辦法針對主版頁面中 WebDataWindow 物件屬性做修改讓它連結相對應的資料表嗎?該怎麼做呢?

    2011年2月8日 上午 08:39

解答

所有回覆

  • 可以請問一下WebDataWindow 是什麼東西嗎?
    常用資源參考:
    小弟的blog: In 91,wiki: my wiki
    2011年2月8日 上午 08:47
    版主
  • 那你得先說清楚什麼是WebDataWindow
    2011年2月8日 上午 08:48
    版主
  • WebDataWindow 因該不是 .net 內建的控制項? 這個是什麼東西?
    請關心你的發問 ^_^
    2011年2月8日 上午 09:50
  • 可以請問一下WebDataWindow 是什麼東西嗎?
    常用資源參考:
    小弟的blog: In 91,wiki: my wiki

    這是額外下載的元件,原本是Power Builder中用來儲存和管理資料庫的資料,他有出.Net的版本Sybase DataWindow 2.5,不曉得是否有這方面的使用經驗?

    謝謝

    2011年2月9日 上午 03:23
  • 只是要找到MasterPage裡的控制項的話還算簡單,如果你是要問WebDataWindow的使用方式的話就要等其它有用過的人了。

    http://msdn.microsoft.com/zh-tw/library/system.web.ui.masterpage.findcontrol.aspx

    2011年2月9日 上午 04:07
    版主
  • Yes, try to get the webdataWindow control in masterpage by using masterPage.FindControl, and then get its properties value and apply change to the FormA and formB
    大家一齊探討、學習和研究,謝謝!
    Microsoft MVP, Microsoft Community Star(TW & HK), MCT,
    MCSD, MCAD, MCSE+I, MCDBA, MCDST, MCSA, MCTS, MCITP, MCPD
    2011年2月9日 上午 04:12
  • 試著以TextBox做測試

    TextBox textBoxFind = (TextBox)this.Page.Master.FindControl("ContentPlaceHolder1").FindControl("TextBox1");

    textBoxFind.Text = "Test...";

    發現 textBoxFind一直都是null,但主版頁面確實有這個東西

    有可能是什麼原因造成這樣的問題呢?

    2011年2月9日 上午 07:24
  • 您的.master檔案相關的部分程式碼可以貼上來嗎?

    如果只有一層masterpage,且TextBox1在MasterPage上,

    應該直接this.Master.FindControl("TextBox1")就可以了


    常用資源參考:
    小弟的blog: In 91,wiki: my wiki
    2011年2月9日 上午 07:28
    版主
  • Hi Jiung0462:

     測試看看用foreach找尋整個頁面的方式,是不是實際程式上,有沒有找到你所說的 Textbox

      foreach (object ctrl in mpContentPlaceHolder.Controls)
            {                  
                        if (ctrl is System.Web.UI.WebControls.TextBox)
                        {
                            
                          }
              
            }

    參考資源:
    [ASP.NET]如何抓取Get Master Page 下 Content Page 中的所有All Control控制項透過foreach方式
    http://www.dotblogs.com.tw/dotjum/archive/2008/04/19/2951.aspx

     


    如何收到討論通知的email通知:

    當你們登入論壇時若在畫面右方有出現以下圖片, 請點選"Click Here " , 並依照步驟填寫正確的email帳號, 才能正確地收到論壇通知郵件!

    2011年2月9日 上午 07:35
    版主
  • 測試OK了,

    如 a-talin 所說的,一層masterpage,且TextBox1在MasterPage上,

    直接this.Master.FindControl("TextBox1")就可以了

    謝謝...

    接下來再測試WebDataWindow部分了

    2011年2月9日 上午 07:41
  • Try this then, because your textbox is not inside the ContentPlaceHolder

    	TextBox textBoxFind = (TextBox)this.Page.Master.FindControl("TextBox1");
    
    	textBoxFind.Text = "Test...";
    
    

     


    大家一齊探討、學習和研究,謝謝!
    Microsoft MVP, Microsoft Community Star(TW & HK), MCT,
    MCSD, MCAD, MCSE+I, MCDBA, MCDST, MCSA, MCTS, MCITP, MCPD
    2011年2月9日 上午 07:42