共用方式為


ASP.NET Mobile Web 網頁簡介

本文件的這個章節為您簡介使用 ASP.NET Mobile 控制項設計 ASP.NET Mobile Web 網頁的方法。行動控制項是建立在 Microsoft .NET Framework 的技術上,並將該技術加以擴充。

Note注意事項

如果您用英文以外的語言撰寫網頁,請參閱 Microsoft ASP.NET 文件中的開發世界性的應用程式的最佳作法

撰寫工具

若要建立 ASP.NET Mobile Web 網頁,您可以使用 Microsoft Visual Studio 或文字編輯器。Visual Studio 會提供建立 Mobile Web 網頁及其程式碼的工具,這些工具也能管理包含這些 Mobile Web 網頁的應用程式。

在建立自己的行動頁面之後,您就能在支援的裝置上使用瀏覽器來檢視這些頁面。如需詳細資訊,請參閱支援的裝置和平台

伺服器端應用程式

行動控制項是在伺服器上執行。它們會將標記語言傳送到瀏覽器,而這些標記會指定如何在目前的表單或網頁中顯示控制項和內容。

每個 Mobile Web 網頁都包含至少一個表單項目,此項目會以 <mobile:Form> 標記 (Tag) 指示。每個行動控制項標記都必須包含 runat=server 屬性 (Attribute)。

用戶端指令碼

如同其他 Web 網頁類型,Mobile Web 網頁也可以包含瀏覽器要處理的用戶端指令碼。如果這些指令碼會參考特定 Web 伺服器控制項,其就必須使用標記語言中所發出的識別項。這些識別項會視裝置支援的標記語言而有不同。若要取得控制項的確切名稱,請編譯應用程式、瀏覽該網頁或表單,並檢視其來源標記。

傳統的 "Hello World" 範例

下列程式碼範例說明一個 "Hello World" Mobile Web 網頁。這個範例示範使用 Form 控制項做為顯示 "Hello, world!" 文字之 Label 行動控制項的容器 (Container)。

<%@ Page Inherits="System.Web.UI.MobileControls.MobilePage" 
   Language="C#" %>
<mobile:Form id=Form1 runat="server">
  <mobile:Label id=Label1 runat="server">
    Hello, world!
  </mobile:Label>
</mobile:Form>

國際的 "Hello World" 範例

行動社群遍佈在全球各地。下列程式碼範例說明國際版本的 "Hello World"。在這個之前範例的變化版本中,List 控制項會根據個別 <Item> 項目,顯示其中所定義之語言的清單。事件處理常式會讀取由使用者選取的語言,然後再切換到另一個表單。switch 陳述式則會用於顯示使用者所選取語言的正確文字。

<%@ Page Language="C#" 
    Inherits="System.Web.UI.MobileControls.MobilePage" %>

<script runat="server">
public void MyEventHandler(Object source, ListCommandEventArgs e)
{
    Selection.Text = "You selected " + e.ListItem.Text;
    ActiveForm = SecondForm;

    switch (e.ListItem.Text)
    {
      case "French":
          Selection.Text = "Bonjour le monde";
          break;

      case "German":
          Selection.Text = "Hallo Welt";
          break;

      case "Italian":
          Selection.Text = "Ciao il mondo";
          break;

      case "Norwegian":
          Selection.Text = "Hei verden";
          break;

      case "Portuguese":
          Selection.Text = "Oi mundo";
          break;

      default:
          Selection.Text = "Hello World";
          break;
   }
}
</script>
<mobile:Form id="ListStuff" runat="server" 
      BackColor="White" ForeColor="#bb7023">
  <mobile:Label runat=server id="label">
    Pick a Language!
  </mobile:Label>
  <mobile:List runat=server id="ListMe" 
      OnItemCommand="MyEventHandler">
    <item Text="English" />
    <item Text="French" />
    <item Text="German" />
    <item Text="Italian" />
    <item Text="Norwegian" />
    <item Text="Portuguese" /> 
  </mobile:List>
</mobile:Form>

<mobile:Form id="SecondForm" runat="server"
    BackColor="White" ForeColor="Green">
  <mobile:Label runat=server>
     Your "Hello World"  Translation
  </mobile:Label>
  <mobile:Label runat=server 
    id="Selection"></mobile:Label>
  <mobile:Link runat=server id="GoBack" 
    NavigateURL="#ListStuff">back</mobile:Link>
</mobile:Form>

變更國際應用程式的文字編碼方式

國際應用程式通常會要求您從預設的 UTF-8 編碼方式變更字元編碼方式。若要變更文字編碼方式,請使用 <globalization> 項目,如同以下範例,此項目會將編碼方式設定為 UTF-16:

<globalization>
  requestEncoding="utf-16"
  responseEncoding="utf-16"
/>

您可以在全域 Machine.config 檔案 (它會指定您所有應用程式的編碼方式) 中設定編碼方式,或在應用程式的 Web.config 檔案 (它只會指定該應用程式的編碼方式) 中設定。

請參閱

參考

<Item> 項目
Form
Label

概念

開發世界性的應用程式的最佳作法
支援的裝置和平台

其他資源

開發 ASP.NET Mobile Web 網頁