Xamarin.Forms 視圖

Download Sample 下載範例

Xamarin.Forms 檢視是跨平臺行動使用者介面的建置組塊。

檢視是使用者介面物件,例如標籤、按鈕和滑桿,通常稱為 其他圖形化程序設計環境中的控件小工具 。 所有衍生自 View 類別支持的Xamarin.Forms檢視。 它們可以分成數個類別:

簡報的檢視

類型 描述 外觀
BoxView BoxView 顯示由 屬性著色的 Color 純色矩形。 BoxView 默認大小要求為 40x40。 若為其他大小,請指派 WidthRequestHeightRequest 屬性。

API 檔 / 指南 / 範例 12、34、5 和 6
BoxView Example
此頁面 / XAML 頁面的 C# 程式代碼
Ellipse Ellipse 會顯示大小 WidthRequest 為 x HeightRequest的橢圓形或圓形。 若要繪製橢圓形內部的 ,請將其 Fill 屬性設定為 Color。 若要為省略號提供大綱,請將它的 Stroke 屬性設定為 Color

API 檔 / 指南 / 範例
Ellipse Example
此頁面 / XAML 頁面的 C# 程式代碼
Label Label 會以常數或變數格式顯示單行文字字串或多行文字區塊。 將 Text 屬性設定為常數格式設定的字串,或將 FormattedText 屬性設定為 FormattedString 對象進行變數格式設定。

API 檔 / 指南 / 範例
Label Example
此頁面 / XAML 頁面的 C# 程式代碼
Line Line 顯示從起點到結束點的線條。 起點是由 X1Y1 屬性表示,而結束點則以 X2Y2 屬性表示。 若要設定線條的色彩,請將其 Stroke 屬性設定為 Color

API 檔 / 指南 / 範例
Line Example
此頁面 / XAML 頁面的 C# 程式代碼
Image Image 會顯示點陣圖。 您可以透過 Web 下載點陣圖、內嵌為通用專案或平台專案中的資源,或使用 .NET Stream 物件建立。

API 檔 / 指南 / 範例
Image Example
此頁面 / XAML 頁面的 C# 程式代碼
Map Map 會顯示地圖。 Xamarin.Forms.地圖必須安裝 NuGet 套件。 Android 和 通用 Windows 平台 需要地圖授權金鑰。

API 檔 / 指南 / 範例
Map Example
此頁面 / XAML 頁面的 C# 程式代碼
OpenGLView OpenGLView 會在 iOS 和 Android 項目中顯示 OpenGL 圖形。 不支援 通用 Windows 平台。 iOS 和 Android 專案需要 OpenTK-1.0 元件或 OpenTK 1.0.0 版元件的參考OpenGLView 更容易在共享專案中使用;如果在 .NET Standard 連結庫中使用,則也需要相依性服務(如範例程式代碼所示)。

這是內建的唯Xamarin.Forms一Xamarin.Forms圖形設備,但應用程式也可以使用 或 UrhoSharp來轉譯圖形SkiaSharp

API 文件

OpenGLView Example
具有程式代碼後置的此頁面 / XAML 頁面 C# 程序代碼
Path Path 會顯示曲線和複雜圖形。 屬性 Data 會指定要繪製的圖形。 若要設定圖形的色彩,請將其 Stroke 屬性設定為 Color

API 檔 / 指南 / 範例
Path Example
此頁面 / XAML 頁面的 C# 程式代碼
Polygon Polygon 顯示多邊形。 屬性 Points 會指定多邊形的頂點,而 FillRule 屬性則指定如何決定多邊形的內部填滿。 若要繪製多邊形內部的 ,請將其 Fill 屬性設定為 Color。 若要為多邊形提供外框,請將其 Stroke 屬性設定為 Color

API 檔 / 指南 / 範例
Polygon Example
此頁面 / XAML 頁面的 C# 程式代碼
Polyline Polyline 會顯示一系列連接的直線。 屬性 Points 會指定聚合線條的頂點,而 FillRule 屬性則指定如何決定聚合線條的內部填滿方式。 若要繪製聚合線條內部的 ,請將其 Fill 屬性設定為 Color。 若要為聚合線條提供外框,請將其 Stroke 屬性設定為 Color

API 檔 / 指南 / 範例
Polyline Example
此頁面 / XAML 頁面的 C# 程式代碼
Rectangle Rectangle 會顯示矩形或正方形。 若要繪製矩形內部的 ,請將其 Fill 屬性設定為 Color。 若要為矩形提供外框,請將其 Stroke 屬性設定為 Color

API 檔 / 指南 / 範例
Rectangle Example
此頁面 / XAML 頁面的 C# 程式代碼
WebView WebView 根據屬性設定 SourceUriWebViewSource 或對象,顯示網頁或 HtmlWebViewSource HTML 內容。

API 檔 / 指南 / 範例 1 和 2
WebView Example
此頁面 / XAML 頁面的 C# 程式代碼

起始命令的檢視

類型 描述 外觀
Button Button 是矩形對象,顯示文字,並在 Clicked 按下事件時引發事件。

API 檔 / 指南 / 範例
Button Example
具有程式代碼後置的此頁面 / XAML 頁面 C# 程序代碼
ImageButton ImageButton 是矩形對象,顯示影像,並在 Clicked 按下事件時引發事件。

API 檔 / 指南 / 範例
ImageButton Example
具有程式代碼後置的此頁面 / XAML 頁面 C# 程序代碼
RadioButton RadioButton 允許從集合選取一個選項,並在 CheckedChanged 選取發生時引發事件。

API 檔 / 指南 / 範例
RadioButton Example
具有程式代碼後置的此頁面 / XAML 頁面 C# 程序代碼
RefreshView RefreshView 是容器控件,可提供可捲動內容的提取重新整理功能。 屬性 ICommandCommand 定義的 會在觸發重新整理時執行,而 IsRefreshing 屬性會指出控件的目前狀態。

API 檔 / 指南 / 範例
RefreshView Example
具有程式代碼後置的此頁面 / XAML 頁面 C# 程序代碼
SearchBar SearchBar 會顯示使用者輸入文字字串的區域,以及指示應用程式執行搜尋的按鈕(或鍵盤按鍵)。 屬性 Text 會提供文字的存取權,而 SearchButtonPressed 事件表示已按下按鈕。

API 檔 / 指南 / 範例
SearchBar Example
具有程式代碼後置的此頁面 / XAML 頁面 C# 程序代碼
SwipeView SwipeView 是包裝內容專案的容器控件,並提供撥動手勢所顯示的內容功能表項。 每個功能表項都會以 SwipeItem表示,其具有 Command 在點選專案時執行 ICommand 的屬性。

API 檔 / 指南 / 範例
SwipeView Example
具有程式代碼後置的此頁面 / XAML 頁面 C# 程序代碼

設定值的檢視

類型 描述 外觀
CheckBox CheckBox 可讓使用者使用可以檢查或空白的按鈕類型來選取布爾值。 屬性 IsChecked 是 的狀態 CheckBox,當狀態變更時,就會 CheckedChanged 引發 事件。

API 檔 / 指南 / 範例
CheckBox Example
此頁面 / XAML 頁面的 C# 程式代碼
Slider Slider可讓使用者從以 MinimumMaximum 屬性指定的連續範圍中選取double值。

API 檔 / 指南 / 範例
Slider Example
此頁面 / XAML 頁面的 C# 程式代碼
Stepper Stepper可讓使用者從以 doubleMaximumIncrement 屬性指定的Minimum累加值範圍中選取值。

API 檔 / 指南 / 範例
Stepper Example
此頁面 / XAML 頁面的 C# 程式代碼
Switch Switch 會採用開啟/關閉參數的形式,讓用戶選取布爾值。 屬性 IsToggled 是參數的狀態,而 Toggled 事件會在狀態變更時引發。

API 檔 / 指南 / 範例
Switch Example
此頁面 / XAML 頁面的 C# 程式代碼
DatePicker DatePicker 可讓使用者使用平臺日期選擇器選取日期。 使用 MinimumDateMaximumDate 屬性設定允許的日期範圍。 屬性 Date 是選取的日期,而且 DateSelected 當該屬性變更時,就會引發 事件。

API 檔 / 指南 / 範例
DatePicker Example
此頁面 / XAML 頁面的 C# 程式代碼
TimePicker TimePicker 可讓使用者使用平台時間選擇器來選取時間。 屬性 Time 是選取的時間。 應用程式可以藉由安裝 事件的處理程式PropertyChanged來監視 屬性中的Time變更。

API 檔 / 指南 / 範例
TimePicker Example
此頁面 / XAML 頁面的 C# 程式代碼

編輯文字的檢視

這兩個類別衍生自 InputView 類別,其定義 Keyboard 屬性:

類型 描述 外觀
Entry Entry 可讓使用者輸入和編輯單行文字。 文字會當做 Text 屬性使用,而且 TextChanged 當文字變更或使用者透過點選 Enter 鍵來發出訊號完成時,就會引發 和 Completed 事件。

Editor使用 來輸入和編輯多行文字。

API 檔 / 指南 / 範例
Entry Example
此頁面 / XAML 頁面的 C# 程式代碼
Editor Editor 可讓使用者輸入和編輯多行文字。 文字會當做 Text 屬性使用,而且 TextChanged 當文字變更或使用者發出訊號完成時,就會引發 和 Completed 事件。

使用檢視 Entry 來輸入和編輯單行文字。

API 檔 / 指南 / 範例
Editor Example
此頁面 / XAML 頁面的 C# 程式代碼

表示活動的檢視

類型 描述 外觀
ActivityIndicator ActivityIndicator 會使用動畫來顯示應用程式從事冗長的活動,而不需提供任何進度指示。 屬性 IsRunning 會控制動畫。

如果已知活動的進度,請改用 ProgressBar

API 檔 / 指南 / 範例
ActivityIndicator Example
此頁面 / XAML 頁面的 C# 程式代碼
ProgressBar ProgressBar 會使用動畫來顯示應用程式正在經過冗長的活動。 將 Progress 屬性設定為介於 0 到 1 之間的值,以指出進度。

如果不知道活動的進度,請改用 ActivityIndicator

API 檔 / 指南 / 範例
ProgressBar Example
具有程式代碼後置的此頁面 / XAML 頁面 C# 程序代碼

顯示集合的檢視

類型 描述 外觀
CarouselView CarouselView 會顯示可捲動的數據項清單。 將 ItemsSource 屬性設定為物件的集合,並將 屬性設定 ItemTemplateDataTemplate 描述專案格式的物件。 事件 CurrentItemChanged 表示目前顯示的專案已變更,該變更為 CurrentItem 屬性。

指南 / 範例
CarouselView Example
此頁面 / XAML 頁面的 C# 程式代碼
CollectionView CollectionView 會使用不同的版面配置規格,顯示可選取資料項的可捲動清單。 其目標是提供更具彈性且高效能的 ListView替代方案。 將 ItemsSource 屬性設定為物件的集合,並將 屬性設定 ItemTemplateDataTemplate 描述專案格式的物件。 事件 SelectionChanged 表示已進行選取專案,該選項可作為 SelectedItem 屬性使用。

指南 / 範例
CollectionView Example
此頁面 / XAML 頁面的 C# 程式代碼
IndicatorView IndicatorView 顯示表示 中 CarouselView項目數的指標。 將 CarouselView.IndicatorView 屬性設定為 IndicatorView 物件,以顯示的 CarouselView指標。

API 檔 / 指南 / 範例
IndicatorView Example
此頁面 / XAML 頁面的 C# 程式代碼
ListView ListView 衍生自 ItemsView 並顯示可選取數據項的可捲動清單。 將 ItemsSource 屬性設定為物件的集合,並將 屬性設定 ItemTemplateDataTemplate 描述專案格式的物件。 事件 ItemSelected 表示已進行選取專案,該選項可作為 SelectedItem 屬性使用。

API 檔 / 指南 / 範例
ListView Example
此頁面 / XAML 頁面的 C# 程式代碼
Picker Picker 會從文字字串清單中顯示選取的專案,並允許在點選檢視時選取該專案。 將 Items 屬性設定為字串清單,或 ItemsSource 將 屬性設定為物件的集合。 選取 SelectedIndexChanged 專案時會引發事件。

Picker只有在選取專案時,才會顯示項目清單。 ListView將或 TableView 用於留在頁面上的可捲動清單。

API 檔 / 指南
Picker Example
具有程式代碼後置的此頁面 / XAML 頁面 C# 程序代碼
TableView TableView 顯示具有選擇性標頭和子標題之類型的 Cell 數據列清單。 將 Root 屬性設定為 類型的 TableRoot物件,並將物件新增 TableSection 至該 TableRoot。 每個 TableSection 都是物件的集合 Cell

API 檔 / 指南 / 範例
TableView Example
此頁面 / XAML 頁面的 C# 程式代碼