2017-08-10 44 views
0

我沒有任何關於asp.net的知識,我想要做的是將我創建的窗體應用程序轉換爲asp一個。應用程序幾乎是一個滑塊從文件夾中拍攝照片並每隔5秒左右在屏幕上顯示它們。我想這個代碼在ASP中網:從Windows窗體應用程序的asp.netnet幻燈片轉換

List<string> keliai = new List<string>(); 
int sk = 0; 
protected void Timer1_Tick(object sender, EventArgs e) 
     { 
      Timer1.Interval = 5000; 
      timmeh(); 
     } 

public void timmeh() 
     { 
      string path = @"."; 

      string[] filePaths = Directory.GetFiles(path, "*.jpg"); 
      string[] filePathsPng = Directory.GetFiles(path, "*.png"); 


      for (int i = 0; i < filePaths.Length; i++) 
      { 
       keliai.Add(filePaths[i]); 
      } 


      if (sk < keliai.Count) 
      { 
       picB.ImageUrl=keliai[sk]; 
       sk++; 
      } 
      else 
      { 
       sk = 0; 
      } 
     } 

而不是picB.ImageUrl=keliai[sk];我用picB.Image = new Bitmap(keliai[sk]); in forms. 當我啓動的項目中,我得到一個異常

[InvalidOperationException: The control with ID 'Timer1' requires a ScriptManager on the page. The ScriptManager must appear before any controls that need it.] 
    System.Web.UI.Timer.get_ScriptManager() +190 
    System.Web.UI.Timer.OnPreRender(EventArgs e) +22 
    System.Web.UI.Control.PreRenderRecursiveInternal() +88 
    System.Web.UI.Control.PreRenderRecursiveInternal() +160 
    System.Web.UI.Control.PreRenderRecursiveInternal() +160 
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +883 

我應該如何更改代碼,使程序會工作在asp .net呢?

回答

1

拖放控制ScriptManager從您的頁面上的工具箱。您在我們的頁面中使用的任何ajax控件都需要有ScriptManager

表單的HTML可能是因爲:

<body> 
    <form runat="server"> 
     <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager> 
     ... 
    <!--Here you might have the timer control--> 
    </form> 
</body> 

有你可以使用更好的體驗許多免費的jQuery插件。可能是這樣的: http://bxslider.com/examples/image-slideshow-captions

+0

它修復了例外,但由於某種原因,即使它在贏取窗體中也不加載我的照片,任何想法如何解決這個問題? – darklup

+0

仍然沒有出於某種原因顯示圖片,但我發現它甚至沒有嘗試加載任何東西。因爲我的路線錯了。我認爲「。」是我的項目所在的文件夾,但顯然它是C:磁盤。我會標記你的答案是正確的,因爲它有助於例外。謝謝。 – darklup

+0

好。但我仍然建議使用jquery插件進行這類工作。它會更容易,感覺很好。 –