MediaElement 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示物件,這個物件會將音訊和視訊轉譯為顯示器。 請參閱<備註>。
public ref class MediaElement sealed : FrameworkElement
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class MediaElement final : FrameworkElement
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class MediaElement final : FrameworkElement
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class MediaElement : FrameworkElement
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class MediaElement : FrameworkElement
Public NotInheritable Class MediaElement
Inherits FrameworkElement
<MediaElement .../>
- 繼承
- 屬性
Windows 需求
裝置系列 |
Windows 10 (已於 10.0.10240.0 引進)
|
API contract |
Windows.Foundation.UniversalApiContract (已於 v1.0 引進)
|
範例
此程式碼會建立 MediaElement,其中 AutoPlay 屬性明確設定為 true ,並將 Source 設定為應用程式中包含的視訊檔案路徑。
<MediaElement Source="Media/video1.mp4" AutoPlay="True" />
<MediaElement x:Name="mediaPlayer"
Source="Videos/video1.mp4"
Width="400"
AutoPlay="False"
AreTransportControlsEnabled="True" />
<Grid>
<Button Content="Show Popup" Click="ShowPopupClicked"/>
<Popup x:Name="mediaPlayerPopup">
<StackPanel Height="1400" Width="1400" Background="Blue">
<MediaElement x:Name="mediaPlayer"
AreTransportControlsEnabled="True"
Source="Media/Intro.wmv"/>
<TextBlock Text="Simple Popup"/>
<Button Content="Close" Click="ClosePopupClicked"/>
</StackPanel>
</Popup>
</Grid>
long token;
protected override void OnNavigatedTo(NavigationEventArgs e)
{
token = mediaPlayer.RegisterPropertyChangedCallback(MediaElement.IsFullWindowProperty, OnMEFullWindowChanged);
base.OnNavigatedTo(e);
}
protected override void OnNavigatedFrom(NavigationEventArgs e)
{
mediaPlayer.UnregisterPropertyChangedCallback(MediaElement.IsFullWindowProperty, token);
}
private void OnMEFullWindowChanged(DependencyObject sender, DependencyProperty dp)
{
MediaElement me = (MediaElement)sender;
if (me != null && dp == MediaElement.IsFullWindowProperty)
{
if (me.IsFullWindow == true)
{
mediaPlayerPopup.Visibility = Visibility.Collapsed;
}
else
{
mediaPlayerPopup.Visibility = Visibility.Visible;
}
}
}
private void ClosePopupClicked(object sender, RoutedEventArgs e)
{
// If the Popup is open, then close it.
if (mediaPlayerPopup.IsOpen) { mediaPlayerPopup.IsOpen = false; }
}
// Handles the Click event on the Button on the page and opens the Popup.
private void ShowPopupClicked(object sender, RoutedEventArgs e)
{
// Open the Popup if it isn't open already.
if (!mediaPlayerPopup.IsOpen) { mediaPlayerPopup.IsOpen = true; }
}
備註
重要
在 Windows 10 中,組建 1607 和 上建議您使用MediaPlayerElement 取代 MediaElement。 MediaPlayerElement 的功能與 MediaElement相同,同時啟用更進階的媒體播放案例。 此外,媒體播放的所有未來改善都會在 MediaPlayerElement中發生。
提示
如需詳細資訊、設計指引和程式碼範例,請參閱 媒體播放。
使用 MediaElement 控制項在您的應用程式中播放音訊和視訊檔案。 內建的媒體傳輸控制項可讓使用者透過提供包含播放、暫停、隱藏式輔助字幕等各種按鈕的預設播放體驗,讓使用者與其媒體互動。 如需詳細資訊,請參閱 MediaTransportControls 。
如需 MediaElement 支援的媒體格式相關資訊,請參閱 支援的編解碼器。
如需 MediaElement 相關效能的相關資訊,請參閱 優化動畫和媒體。
設定媒體來源
將 MediaElement 物件的 Source 屬性設定為指向音訊或視訊檔案。 屬性可以設定為應用程式隨附之檔案的統一資源識別項 (URI) ,或網路上檔案的統一資源識別項 (URI) 。 您可以使用 SetSource 方法,使用 FileOpenPicker 物件,將來源設定為從本機系統擷取的檔案。
根據預設, Source 屬性所定義的媒體會在載入 MediaElement 物件之後立即播放。 若要隱藏媒體自動啟動,請將 AutoPlay 屬性設定為 false。
即時媒體串流報告Int64.MaxValue的NaturalDuration。
以下說明如何在 XAML 中建立 MediaElement,並將 Source 設定為應用程式中包含的視訊檔案路徑,並將 AutoPlay 屬性明確設定為 false。
<MediaElement Source="Media/video1.mp4" AutoPlay="false"/>
以下是如何在程式碼中建立 MediaElement。
MediaElement mediaElement1 = new MediaElement();
mediaElement1.Source = new Uri("ms-appx:///Media/video1.mp4");
mediaElement1.AutoPlay = false;
// Add the MediaElement to the page.
rootGrid.Children.Add(mediaElement1);
處理媒體事件
您可以回應一般媒體事件,例如 MediaOpened、 MediaEnded、 MediaFailed和 CurrentStateChanged 事件。 最好一律處理 MediaFailed 事件。
傳輸控制項
設定 AreTransportControlsEnabled 屬性,以程式設計方式啟用和停用 MediaElement 的內建傳輸控制項。 內建傳輸控制項提供 UI 來播放、停止、暫停和搜尋媒體,以及磁片區、靜音、完整視窗、追蹤選取專案和剩餘時間的 UI。
您可以將 AreTransportControlsEnabled 設定為 false,並使用 Play、 Pause和 Stop 方法來建立自己的媒體傳輸控制項。 MediaElement 也會公開一組豐富的屬性,例如 Position、 Volume、 IsMuted、 IsLooping、 PlaybackRate和 Balance。
提示
若要提升效能,請避免資料系結至 Position 屬性,以反映頻繁的位置更新 (例如進度列) 。 請改用 DispatcherTimer 查詢 Position 屬性。
如需詳細資訊和範例,請參閱 建立自訂傳輸控制項。
開啟本機媒體檔案
若要在本機系統或 Microsoft OneDrive 上開啟檔案,您可以使用 FileOpenPicker 取得檔案和 SetSource 來設定媒體來源,也可以以程式設計方式存取使用者媒體檔案夾。
如果您的 app 需要存取而不需使用者與 音樂 或 視訊 資料夾互動,例如,如果您要列舉使用者集合中的所有音樂或視訊檔案,並在您的應用程式中顯示它們,則您需要宣告 音樂媒體櫃 和 視訊媒體櫃 功能。 如需詳細資訊,請參閱音樂、圖片及影片媒體櫃中的檔案和資料夾。
FileOpenPicker不需要特殊功能來存取本機檔案系統上的檔案,例如使用者的[音樂] 或 [視訊] 資料夾,因為使用者完全控制要存取的檔案。 從安全性與隱私權的立場看,最佳做法是將 app 使用的「功能」數降到最小。
使用 FileOpenPicker 開啟本機媒體
-
- 呼叫 FileOpenPicker,讓使用者挑選媒體檔案。
使用 FileOpenPicker 類別選取媒體檔案。 設定 FileTypeFilter 以指定 FileOpenPicker 將顯示的檔案類型。 呼叫 PickSingleFileAsync,以啟動檔案選擇器並取得檔案。
- 呼叫 SetSource 將所選媒體檔案設定為 MediaElement.Source。
若要將MediaElement 的來源設定為從FileOpenPicker傳回的StorageFile,您需要開啟資料流程。 在StorageFile上呼叫OpenAsync方法會傳回您可以傳入MediaElement.SetSource方法的資料流程。 然後在 MediaElement 上呼叫 Play 以啟動媒體。 此範例示範如何使用FileOpenPicker來選擇檔案,並將檔案設定為 MediaElement的來源。
<MediaElement x:Name="mediaPlayer"/>
...
<Button Content="Choose file" Click="Button_Click"/>
private async void Button_Click(object sender, RoutedEventArgs e)
{
await SetLocalMedia();
}
async private System.Threading.Tasks.Task SetLocalMedia()
{
var openPicker = new Windows.Storage.Pickers.FileOpenPicker();
openPicker.FileTypeFilter.Add(".wmv");
openPicker.FileTypeFilter.Add(".mp4");
openPicker.FileTypeFilter.Add(".wma");
openPicker.FileTypeFilter.Add(".mp3");
var file = await openPicker.PickSingleFileAsync();
// mediaPlayer is a MediaElement defined in XAML
if (file != null)
{
var stream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read);
mediaPlayer.SetSource(stream, file.ContentType);
mediaPlayer.Play();
}
}
選取不同語言的音訊播放軌
使用 AudioStreamIndex 屬性和 GetAudioStreamLanguage 方法,將音訊變更為視訊上的不同語言播放軌。 影片也可以包含同一種語言的多個音訊播放軌,例如在音樂上的主管意見。 此範例特別示範如何在不同語言之間切換,但您可以修改此程式碼以在任何音訊播放軌之間切換。
若要選取不同語言的音訊播放軌
- 取得音訊播放軌。
若要以特定語言搜尋曲目,請逐一查看影片上的每個曲目。 使用 AudioStreamCount 作為 for 迴圈的最大值。
- 取得音訊播放軌的語言。
使用GetAudioStreamLanguage方法來取得曲目的語言。曲目的語言是由語言代碼所識別,例如英文的「en」或日文的「ja」。
- 設定使用中的音訊播放軌。
當您找到具有所需語言的曲目時,請將 AudioStreamIndex 設定為播放軌的索引。將 AudioStreamIndex 設定為 null 會選取內容所定義的預設音訊播放軌。 以下是嘗試將音訊播放軌設定為指定語言的一些程式碼。 它會逐一查看 MediaElement 物件上的音訊播放軌,並使用 GetAudioStreamLanguage 來取得每個曲目的語言。如果所需的語言播放軌存在, AudioStreamIndex 會設定為該播放軌的索引。
/// <summary>
/// Attemps to set the audio track of a video to a specific language
/// </summary>
/// <param name="lcid">The id of the language. For example, "en" or "ja"</param>
/// <returns>true if the track was set; otherwise, false.</returns>
private bool SetAudioLanguage(string lcid, MediaElement media)
{
bool wasLanguageSet = false;
for (int index = 0; index < media.AudioStreamCount; index++)
{
if (media.GetAudioStreamLanguage(index) == lcid)
{
media.AudioStreamIndex = index;
wasLanguageSet = true;
}
}
return wasLanguageSet;
}
全視窗播放
使用 IsFullWindow 屬性來啟用和停用完整視窗轉譯。 在全視窗模式中,MediaElement 上收到的輸入事件仍會路由傳送至背景中的視覺化樹狀結構。 例如,如果 MediaElement 位於 ListBox中,則輪轉滾輪可能會導致 ListBox 在背景中捲動。 這可能會導致非預期的行為。 如果輸入事件不應該在全視窗模式中路由傳送,MediaElement 應該處理事件。
注意
建議您不要在 快顯 控制項中使用 MediaElement。 如果 快顯 中裝載的 MediaElement 切換為全視窗模式, Popup 就會轉譯在 MediaElement 頂端。 如果您必須在 快顯中使用 MediaElement,您應該在 MediaElement 進入全視窗模式時折迭 快顯視窗 ,並在 MediaElement 結束全視窗模式時還原 快顯 。 使用 DependencyProperty.RegisterPropertyChangedCallback 在 MediaElement.IsFullWindow 屬性變更時收到通知。 如需範例,請參閱<範例>一節。
讓媒體保持播放
若要防止顯示器在未偵測到使用者動作時停用 (例如,app 正在播放影片時),您可以呼叫 DisplayRequest.RequestActive。 若要省電並延長電池續航力,您應該在不再需要顯示器要求時呼叫 DisplayRequest.RequestRelease 以便立即釋放顯示器要求。
以下是一些您應該釋放顯示器要求的情況:
- 視訊播放暫停時,例如因使用者動作、緩衝或因為頻寬有限而進行調整。
- 播放停止時。 例如,視訊播放完畢或簡報結束。
- 發生播放錯誤時。 例如,網路連線問題或檔案損毀。 在這裡,您會使用 CurrentStateChanged 事件來偵測這些情況。 然後,使用 IsAudioOnly 屬性來判斷音訊或視訊檔案是否現正播放,而且只有在影片現正播放時,才會讓螢幕保持作用中。
<MediaElement Source="Media/video1.mp4"
CurrentStateChanged="MediaElement_CurrentStateChanged"/>
// Create this variable at a global scope. Set it to null.
private DisplayRequest appDisplayRequest = null;
private void MediaElement_CurrentStateChanged(object sender, RoutedEventArgs e)
{
MediaElement mediaElement = sender as MediaElement;
if (mediaElement != null && mediaElement.IsAudioOnly == false)
{
if (mediaElement.CurrentState == Windows.UI.Xaml.Media.MediaElementState.Playing)
{
if (appDisplayRequest == null)
{
// This call creates an instance of the DisplayRequest object.
appDisplayRequest = new DisplayRequest();
appDisplayRequest.RequestActive();
}
}
else // CurrentState is Buffering, Closed, Opening, Paused, or Stopped.
{
if (appDisplayRequest != null)
{
// Deactivate the display request and set the var to null.
appDisplayRequest.RequestRelease();
appDisplayRequest = null;
}
}
}
}
海報來源
您可以使用 PosterSource 屬性,在載入媒體之前提供 MediaElement 的視覺標記法。 PosterSource 是指螢幕擷取畫面或電影海報等,這類會取代媒體顯示的影像。 PosterSource 會在下列情況顯示:
- 未設定有效的來源。 例如, Source 未設定、 Source 設定為 Null,或來源無效 (,如同 MediaFailed 事件引發) 的情況。
- 媒體正在載入時。 例如,已設定有效的來源,但 尚未引發 MediaOpened 事件。
- 媒體正在串流處理到另一個裝置時。
- 媒體只包含音訊時。
舊版的注意事項
Windows 8.1
在Windows Phone上,您一次只能有一個 MediaElement。
若要讓您的 app 在背景時繼續播放音訊,請將 AudioCategory 屬性設定為 BackgroundCapableMedia。 這也需要在應用程式資訊清單中宣告「音訊」背景工作功能。 這些值在 Windows 10中已被取代。
Windows 8
在Windows 8.1之前,無法使用 中的 IsFullWindow屬性。 若要啟用完整視窗視訊播放,您必須將 MediaElement 的 Width 和 Height 設定為目前視窗的 Window.Bounds 。 具體而言,請使用 Window.Current.Bounds.Width 和 Window.Current.Bounds.Height。 如果您設定父元素的維度,例如方格或包含的專案,而不是 MediaElement,則完整視窗播放不會利用系統優化。
在Windows 8.1之前,MediaElement 不支援Opacity屬性。
在Windows 8.1之前,無法使用 AreTransportControlsEnabled屬性和內建傳輸控制項。 您必須提供自己的傳輸控制項。 如需詳細資訊和範例,請參閱建立XAML 媒體播放範例的自訂傳輸控制項和案例 4。
Windows Phone 8
Windows Phone 8.x 應用程式必須使用PickSingleFileAndContinue開啟本機媒體檔案。
建構函式
MediaElement() |
具現化 MediaElement 類別的新實例。 |
屬性
AccessKey |
取得或設定這個專案的便捷鍵 (助憶鍵) 。 (繼承來源 UIElement) |
AccessKeyScopeOwner |
取得或設定來源專案,這個元素會提供這個專案的存取索引鍵範圍,即使它不在來源專案的視覺化樹狀結構中也一樣。 (繼承來源 UIElement) |
ActualHeight |
取得 FrameworkElement的呈現高度。 請參閱<備註>。 (繼承來源 FrameworkElement) |
ActualOffset |
取得這個 UIElement 的位置,相對於其父系,在配置程式的排列階段期間計算。 (繼承來源 UIElement) |
ActualSize |
取得這個 UIElement 在配置程式的排列階段期間計算的大小。 (繼承來源 UIElement) |
ActualStereo3DVideoPackingMode |
取得列舉值,決定立體立體視訊畫面封裝模式的目前值,並考慮其他因素,例如媒體引擎是否準備好使用。 |
ActualStereo3DVideoPackingModeProperty |
識別 ActualStereo3DVideoPackingMode 相依性屬性。 |
ActualTheme |
取得專案目前使用的 UI 主題,可能與 RequestedTheme不同。 (繼承來源 FrameworkElement) |
ActualWidth |
取得 FrameworkElement的呈現寬度。 請參閱<備註>。 (繼承來源 FrameworkElement) |
AllowDrop |
取得或設定值,這個值會判斷這個 UIElement 是否可以是拖放作業的置放目標。 (繼承來源 UIElement) |
AllowFocusOnInteraction |
取得或設定值,這個值表示當使用者與其互動時,專案是否會自動取得焦點。 (繼承來源 FrameworkElement) |
AllowFocusWhenDisabled |
取得或設定停用的控制項是否可以接收焦點。 (繼承來源 FrameworkElement) |
AreTransportControlsEnabled |
取得或設定值,這個值會決定是否啟用標準傳輸控制項。 |
AreTransportControlsEnabledProperty |
識別 AreTransportControlsEnabled 相依性屬性。 |
AspectRatioHeight |
取得媒體原生外觀比例的高度部分。 |
AspectRatioHeightProperty |
識別 AspectRatioHeight 相依性屬性。 |
AspectRatioWidth |
取得媒體原生外觀比例的寬度部分。 |
AspectRatioWidthProperty |
識別 AspectRatioWidth 相依性屬性。 |
AudioCategory |
取得或設定值,這個值描述音訊資料流程中的音訊資訊用途。 |
AudioCategoryProperty |
識別 AudioCategory 相依性屬性。 |
AudioDeviceType |
取得或設定值,這個值描述用來播放音訊之裝置的主要使用方式。 |
AudioDeviceTypeProperty |
識別 AudioDeviceType 相依性屬性。 |
AudioStreamCount |
取得存在於目前媒體檔案中的音訊資料流程數目。 |
AudioStreamCountProperty |
識別 AudioStreamCount 相依性屬性。 |
AudioStreamIndex |
取得或設定與視訊元件一起播放之音訊資料流程的索引。 音訊資料流程的集合會在執行時間組成,並代表媒體檔案中可用的所有音訊資料流程。 |
AudioStreamIndexProperty |
識別 AudioStreamIndex 相依性屬性。 |
AutoPlay |
取得或設定值,指出設定 Source 屬性時,媒體是否會自動開始播放。 |
AutoPlayProperty |
識別 AutoPlay 相依性屬性。 |
Balance |
取得或設定跨立體喇叭的音量比例。 |
BalanceProperty |
識別 Balance 相依性屬性。 |
BaseUri |
取得統一資源識別元 (URI) ,代表 XAML 載入時間 XAML 建構物件的基底統一資源識別元 (URI) 。 此屬性適用于執行時間的統一資源識別項 (URI) 解析。 (繼承來源 FrameworkElement) |
BufferingProgress |
取得值,這個值表示目前的緩衝進度。 |
BufferingProgressProperty |
識別 BufferingProgress 相依性屬性。 |
CacheMode |
取得或設定值,這個值表示轉譯的內容應該盡可能快取為複合點陣圖。 (繼承來源 UIElement) |
CanBeScrollAnchor |
取得或設定值,這個值表示 UIElement 是否可以是捲動錨定候選項目。 (繼承來源 UIElement) |
CanDrag |
取得或設定值,這個值表示是否可以將專案拖曳為拖放作業中的資料。 (繼承來源 UIElement) |
CanPause |
取得值,這個值表示如果呼叫 Pause 方法,是否可以暫停媒體。 |
CanPauseProperty |
識別 CanPause 相依性屬性。 |
CanSeek |
取得值,這個值表示媒體是否可以藉由設定 Position 屬性的值來重新置放。 |
CanSeekProperty |
識別 CanSeek 相依性屬性。 |
CenterPoint |
取得或設定專案的中心點,這是發生旋轉或縮放的點。 影響專案的轉譯位置。 (繼承來源 UIElement) |
Clip |
取得或設定用來定義UIElement內容的大綱的RectangleGeometry。 (繼承來源 UIElement) |
CompositeMode |
取得或設定屬性,這個屬性會宣告其父版面配置和視窗中專案的替代組合和混合模式。 這與混合 XAML/Microsoft DirectX UI 相關的元素相關。 (繼承來源 UIElement) |
ContextFlyout |
取得或設定與這個專案相關聯的飛出視窗。 (繼承來源 UIElement) |
CurrentState |
取得這個 MediaElement的狀態。 |
CurrentStateProperty |
識別 CurrentState 相依性屬性。 |
DataContext |
取得或設定 FrameworkElement的資料內容。 資料內容的常見用法是 當 FrameworkElement 使用 {Binding} 標記延伸並參與資料系結時。 (繼承來源 FrameworkElement) |
DefaultPlaybackRate |
取得或設定媒體引擎的預設播放速率。 當使用者未使用快速轉送或反向時,就會套用播放速率。 |
DefaultPlaybackRateProperty |
識別 DefaultPlaybackRate 相依性屬性。 |
DesiredSize |
取得這個 UIElement 在版面配置程式的量值階段期間計算的大小。 (繼承來源 UIElement) |
Dispatcher |
取得與此物件相關聯的 CoreDispatcher 。 CoreDispatcher代表可以存取 UI 執行緒上DependencyObject的功能,即使程式碼是由非 UI 執行緒起始也一樣。 (繼承來源 DependencyObject) |
DownloadProgress |
取得值,這個值表示遠端伺服器上內容已完成的下載量。 |
DownloadProgressOffset |
取得下載進度的位移,這在搜尋前方案例中相關。 |
DownloadProgressOffsetProperty |
識別 DownloadProgressOffset 相依性屬性。 |
DownloadProgressProperty |
識別 DownloadProgress 相依性屬性。 |
ExitDisplayModeOnAccessKeyInvoked |
取得或設定值,指定叫用存取金鑰時是否關閉存取金鑰顯示。 (繼承來源 UIElement) |
FlowDirection |
取得或設定文字和其他 UI 元素在控制其版面配置的任何父元素內流動的方向。 這個屬性可以設定為 LeftToRight 或 RightToLeft。 在任何元素上將 FlowDirection 設定為 RightToLeft ,會將對齊方式設定為右側、從右至左的讀取順序,以及控制項從右至左流動的版面配置。 (繼承來源 FrameworkElement) |
FocusVisualMargin |
取得或設定 FrameworkElement焦點視覺效果的外部邊界。 (繼承來源 FrameworkElement) |
FocusVisualPrimaryBrush |
取得或設定筆刷,用來繪製FrameworkElement之或 |
FocusVisualPrimaryThickness |
取得或設定FrameworkElement之外部 |
FocusVisualSecondaryBrush |
取得或設定筆刷,用來繪製FrameworkElement之或 |
FocusVisualSecondaryThickness |
取得或設定FrameworkElement之 |
Height |
取得或設定 FrameworkElement的建議高度。 (繼承來源 FrameworkElement) |
HighContrastAdjustment |
取得或設定值,這個值表示當啟用高對比主題時,架構是否會自動調整專案的視覺屬性。 (繼承來源 UIElement) |
HorizontalAlignment |
取得或設定在版面配置父系中撰寫時套用至 FrameworkElement 的水準對齊特性,例如面板或專案控制項。 (繼承來源 FrameworkElement) |
IsAccessKeyScope |
取得或設定值,這個值表示專案是否定義自己的存取金鑰範圍。 (繼承來源 UIElement) |
IsAudioOnly |
取得值,這個值會報告目前的來源媒體是否為僅限音訊的媒體檔案。 |
IsAudioOnlyProperty |
識別 IsAudioOnly 相 依性屬性。 |
IsDoubleTapEnabled |
取得或設定值,這個值會判斷 DoubleTapped 事件是否可以來自該專案。 (繼承來源 UIElement) |
IsFullWindow |
取得值,指定 MediaElement 是否在全視窗模式中呈現。 設定此屬性會啟用或停用完整視窗轉譯。 |
IsFullWindowProperty |
識別 IsFullWindow 相依性屬性。 |
IsHitTestVisible |
取得或設定這個 UIElement 的自主區域是否可以傳回真正的值來進行點擊測試。 (繼承來源 UIElement) |
IsHoldingEnabled |
取得或設定值,這個值會決定 Holding 事件是否可以來自該專案。 (繼承來源 UIElement) |
IsLoaded |
取得值,這個值表示專案是否已加入至專案樹狀結構,且已準備好進行互動。 (繼承來源 FrameworkElement) |
IsLooping |
取得或設定值,這個值描述媒體引擎中目前載入的媒體來源是否應該在到達媒體結束時自動將位置設定為媒體開始。 |
IsLoopingProperty |
識別 IsLooping 相依性屬性。 |
IsMuted |
取得或設定值,這個值表示音訊是否為靜音。 |
IsMutedProperty |
識別 IsMuted 相依性屬性。 |
IsRightTapEnabled |
取得或設定值,這個值會判斷 RightTapped 事件是否可以來自該專案。 (繼承來源 UIElement) |
IsStereo3DVideo |
取得值,這個值會報告目前的來源媒體是否為立體立體視訊媒體檔案。 |
IsStereo3DVideoProperty |
識別 IsStereo3DVideo 相依性屬性。 |
IsTapEnabled |
取得或設定值,這個值會決定 Tapped 事件是否可以來自該專案。 (繼承來源 UIElement) |
KeyboardAcceleratorPlacementMode |
取得或設定值,這個值表示控制項 工具提示 是否顯示其相關聯鍵盤快速鍵的按鍵組合。 (繼承來源 UIElement) |
KeyboardAcceleratorPlacementTarget |
取得或設定值,這個值表示顯示快速鍵組合的控制項 工具提示 。 (繼承來源 UIElement) |
KeyboardAccelerators |
取得使用鍵盤叫用動作的按鍵組合集合。 快速鍵通常會指派給按鈕或功能表項目。
|
KeyTipHorizontalOffset |
取得或設定值,指出索引鍵提示相對於 UIElement 的左邊或右邊。 (繼承來源 UIElement) |
KeyTipPlacementMode |
取得或設定值,這個值表示存取索引鍵提示相對於 UIElement 界限的位置。 (繼承來源 UIElement) |
KeyTipTarget |
取得或設定值,這個值表示存取索引鍵提示的目標專案。 (繼承來源 UIElement) |
KeyTipVerticalOffset |
取得或設定值,這個值表示相對於 UI 元素放置索引鍵提示的上下距離。 (繼承來源 UIElement) |
Language |
取得或設定套用至 FrameworkElement的當地語系化/全球化語言資訊,以及套用至物件標記法和 UI 中目前 FrameworkElement 的所有子項目。 (繼承來源 FrameworkElement) |
Lights |
取得附加至這個專案的 XamlLight 物件集合。 (繼承來源 UIElement) |
ManipulationMode |
取得或設定用於UIElement行為與手勢互動的ManipulationModes值。 設定此值可讓您處理來自應用程式程式碼中這個專案的操作事件。 (繼承來源 UIElement) |
Margin |
取得或設定 FrameworkElement的外部邊界。 (繼承來源 FrameworkElement) |
Markers |
取得與目前載入媒體檔案相關聯的時間軸標記集合。 |
MaxHeight |
取得或設定 FrameworkElement的最大高度條件約束。 (繼承來源 FrameworkElement) |
MaxWidth |
取得或設定 FrameworkElement的最大寬度條件約束。 (繼承來源 FrameworkElement) |
MinHeight |
取得或設定 FrameworkElement的最小高度條件約束。 (繼承來源 FrameworkElement) |
MinWidth |
取得或設定 FrameworkElement的最小寬度條件約束。 (繼承來源 FrameworkElement) |
Name |
取得或設定 物件的識別名稱。 當 XAML 處理器從 XAML 標記建立物件樹狀結構時,執行時間程式碼可以透過這個名稱參考 XAML 宣告的物件。 (繼承來源 FrameworkElement) |
NaturalDuration |
取得目前開啟之媒體檔案的持續時間。 |
NaturalDurationProperty |
識別 NaturalDuration 相依性屬性。 |
NaturalVideoHeight |
取得與媒體關聯的視訊高度。 |
NaturalVideoHeightProperty |
識別 NaturalVideoHeight 相依性屬性。 |
NaturalVideoWidth |
取得與媒體關聯的視訊寬度。 |
NaturalVideoWidthProperty |
識別 NaturalVideoWidth 相依性屬性。 |
Opacity |
取得或設定物件的不透明度程度。 (繼承來源 UIElement) |
OpacityTransition |
取得或設定 ScalarTransition,以動畫顯示 Opacity 屬性的變更。 (繼承來源 UIElement) |
Parent |
取得物件樹狀結構中這個 FrameworkElement 的父物件。 (繼承來源 FrameworkElement) |
PlaybackRate |
取得或設定媒體引擎的播放速率比率。 |
PlaybackRateProperty |
識別 PlaybackRate 相依性屬性。 |
PlayToPreferredSourceUri |
注意 PlayToPreferredSourceUri 已被取代。 相反地,呼叫 MediaElement.GetAsCastingSource ,並在傳回的值上呼叫 CastingSource.PreferredSourceUri。 取得或設定慣用媒體來源的路徑,讓 Play To 目標裝置能夠串流媒體內容,該內容可以受到 DRM 保護,例如雲端媒體伺服器。 |
PlayToPreferredSourceUriProperty |
識別 PlayToPreferredSourceUri 相依性屬性。 |
PlayToSource |
取得當 MediaElement 用於 「PlayTo」 案例時所傳輸的資訊。 |
PlayToSourceProperty |
識別 PlayToSource 相依性屬性。 |
PointerCaptures |
取得所有擷取指標的集合,表示為 指標 值。 (繼承來源 UIElement) |
Position |
取得或設定媒體播放時間進度的目前位置。 |
PositionProperty |
識別 Position 相依性屬性。 |
PosterSource |
取得或設定在 MediaElement 載入轉換狀態期間用於預留位置影像的影像來源。 |
PosterSourceProperty |
識別 PosterSource 相依性屬性。 |
Projection |
取得或設定轉譯這個專案時要套用的 3D 效果) (3D 效果。 (繼承來源 UIElement) |
ProtectionManager |
取得或設定與此 MediaElement相關聯的媒體內容保護專用物件。 |
ProtectionManagerProperty |
識別 ProtectionManager 相依性屬性。 |
RealTimePlayback |
取得或設定值,這個值會設定即時通訊案例的 MediaElement 。 |
RealTimePlaybackProperty |
識別 RealTimePlayback 相依性屬性。 |
RenderSize |
取得 UIElement的最終轉譯大小。 不建議使用,請參閱。 (繼承來源 UIElement) |
RenderTransform |
取得或設定會影響 UIElement轉譯位置的轉換資訊。 (繼承來源 UIElement) |
RenderTransformOrigin |
取得或設定 RenderTransform所宣告之任何可能轉譯轉換的原點,相對於 UIElement的界限。 (繼承來源 UIElement) |
RequestedTheme |
取得或設定 UIElement (及其子項目) 用於資源判斷的 UI 主題。 您使用 RequestedTheme 指定的 UI 主題可以覆寫應用層級 RequestedTheme。 (繼承來源 FrameworkElement) |
Resources |
取得本機定義的資源字典。 在 XAML 中,您可以透過 XAML 隱含集合語法,將資源專案建立為屬性專案的子物件專案 |
Rotation |
取得或設定順時針旋轉的角度,以度為單位。 相對於 RotationAxis 和 CenterPoint 旋轉。 影響專案的轉譯位置。 (繼承來源 UIElement) |
RotationAxis |
取得或設定座標軸,以繞著旋轉專案。 (繼承來源 UIElement) |
RotationTransition |
取得或設定 ScalarTransition,以動畫顯示 Rotation 屬性的變更。 (繼承來源 UIElement) |
Scale |
取得或設定專案的刻度。 相對於專案的 CenterPoint 進行調整。 影響專案的轉譯位置。 (繼承來源 UIElement) |
ScaleTransition |
取得或設定 Vector3Transition,以動畫顯示 Scale 屬性的變更。 (繼承來源 UIElement) |
Shadow |
取得或設定 元素所轉換的陰影效果。 (繼承來源 UIElement) |
Source |
取得或設定 MediaElement上的媒體來源。 |
SourceProperty |
識別 來源 相依性屬性。 |
Stereo3DVideoPackingMode |
取得或設定列舉值,決定目前媒體來源的立體立體視訊畫面封裝模式。 |
Stereo3DVideoPackingModeProperty |
識別 Stereo3DVideoPackingMode 相依性屬性。 |
Stereo3DVideoRenderMode |
取得或設定列舉值,決定目前媒體來源的立體視訊轉譯模式。 |
Stereo3DVideoRenderModeProperty |
識別 Stereo3DVideoRenderMode 相依性屬性。 |
Stretch |
取得或設定值,這個值描述如何延展 MediaElement 以填滿目的地矩形。 |
StretchProperty |
識別 Stretch 相依性屬性。 |
Style |
取得或設定配置和轉譯期間針對這個物件套用的實例 Style 。 (繼承來源 FrameworkElement) |
TabFocusNavigation |
取得或設定值,這個值會修改 Tabbing 和 TabIndex 對此控制項的運作方式。 (繼承來源 UIElement) |
Tag |
取得或設定任意物件值,可用來儲存這個物件的自訂資訊。 (繼承來源 FrameworkElement) |
Transform3D |
取得或設定轉譯這個專案時要套用的 3D 轉換效果。 (繼承來源 UIElement) |
TransformMatrix |
取得或設定要套用至專案的轉換矩陣。 (繼承來源 UIElement) |
Transitions |
取得或設定套用至UIElement的Transition樣式專案集合。 (繼承來源 UIElement) |
Translation |
取得或設定專案的 x、y 和 z 轉譯位置。 (繼承來源 UIElement) |
TranslationTransition |
取得或設定 Vector3Transition,以動畫顯示 Translation 屬性的變更。 (繼承來源 UIElement) |
TransportControls |
取得或設定媒體的傳輸控制項。 |
Triggers |
取得針對 FrameworkElement定義的動畫觸發程式集合。 不常使用。 請參閱<備註>。 (繼承來源 FrameworkElement) |
UIContext |
取得專案的內容識別碼。 (繼承來源 UIElement) |
UseLayoutRounding |
取得或設定值,這個值會決定物件及其視覺子樹的轉譯是否應該使用四捨五入行為,將轉譯對齊整個圖元。 (繼承來源 UIElement) |
VerticalAlignment |
取得或設定在面板或專案控制項等父物件中撰寫時套用至 FrameworkElement 的垂直對齊特性。 (繼承來源 FrameworkElement) |
Visibility |
取得或設定 UIElement的可見度。 不可見的 UIElement 不會轉譯,而且不會將其所需的大小傳達給版面配置。 (繼承來源 UIElement) |
Volume |
取得或設定媒體的磁碟區。 |
VolumeProperty |
識別 磁片區 相依性屬性。 |
Width |
取得或設定 FrameworkElement的寬度。 (繼承來源 FrameworkElement) |
XamlRoot |
取得或設定 |
XYFocusDownNavigationStrategy |
取得或設定值,指定用來判斷向下導覽目標元素的策略。 (繼承來源 UIElement) |
XYFocusKeyboardNavigation |
取得或設定值,這個值會啟用或停用使用鍵盤方向箭號的流覽。 (繼承來源 UIElement) |
XYFocusLeftNavigationStrategy |
取得或設定值,指定用來判斷左側導覽目標元素的策略。 (繼承來源 UIElement) |
XYFocusRightNavigationStrategy |
取得或設定值,指定用來判斷右導覽之目標元素的策略。 (繼承來源 UIElement) |
XYFocusUpNavigationStrategy |
取得或設定值,指定用來判斷向上流覽目標元素的策略。 (繼承來源 UIElement) |
方法
事件
AccessKeyDisplayDismissed |
發生于不應再顯示存取金鑰時。 (繼承來源 UIElement) |
AccessKeyDisplayRequested |
發生于使用者要求顯示存取金鑰時。 (繼承來源 UIElement) |
AccessKeyInvoked |
發生于使用者完成存取金鑰序列時。 (繼承來源 UIElement) |
ActualThemeChanged |
發生于 ActualTheme 屬性值已變更時。 (繼承來源 FrameworkElement) |
BringIntoViewRequested |
在這個專案或其中一個子代上呼叫 StartBringIntoView 時發生。 (繼承來源 UIElement) |
BufferingProgressChanged |
當 BufferingProgress 屬性變更時發生。 |
CharacterReceived |
發生于輸入佇列收到單一、撰寫的字元時。 (繼承來源 UIElement) |
ContextCanceled |
發生于內容輸入手勢繼續進入操作手勢時,通知專案不應開啟內容飛出視窗。 (繼承來源 UIElement) |
ContextRequested |
發生于使用者已完成內容輸入手勢時,例如按一下滑鼠右鍵。 (繼承來源 UIElement) |
CurrentStateChanged |
發生于 CurrentState 屬性的值變更時。 |
DataContextChanged |
發生于 FrameworkElement.DataCoNtext 屬性的值變更時。 (繼承來源 FrameworkElement) |
DoubleTapped |
發生于在此元素的點擊測試區域上發生未處理的 DoubleTap 互動時。 (繼承來源 UIElement) |
DownloadProgressChanged |
發生于 DownloadProgress 屬性已變更時。 |
DragEnter |
當輸入系統報告基礎拖曳事件,並將這個專案當做目標時發生。 (繼承來源 UIElement) |
DragLeave |
當輸入系統報告基礎拖曳事件,並將這個專案當做原點時發生。 (繼承來源 UIElement) |
DragOver |
在輸入系統回報以此項目作為可能置放目標的基礎拖曳事件時發生。 (繼承來源 UIElement) |
DragStarting |
發生于起始拖曳作業時。 (繼承來源 UIElement) |
Drop |
輸入系統報告其下以這個項目作為置放目標的置放事件時發生。 (繼承來源 UIElement) |
DropCompleted |
發生于以這個專案做為結束來源的拖放作業時。 (繼承來源 UIElement) |
EffectiveViewportChanged |
發生于 FrameworkElement的有效檢視區 變更時。 (繼承來源 FrameworkElement) |
GettingFocus |
發生于 UIElement 收到焦點之前。 此事件會同步引發,以確保事件反升時不會移動焦點。 (繼承來源 UIElement) |
GotFocus |
發生于 UIElement 收到焦點時。 此事件會以非同步方式引發,因此焦點可以在反升完成之前再次移動。 (繼承來源 UIElement) |
Holding |
發生于在此元素的點擊測試區域上發生未處理的 保留 互動時。 (繼承來源 UIElement) |
KeyDown |
在 UIElement 有焦點時按下鍵盤按鍵時發生。 (繼承來源 UIElement) |
KeyUp |
發生于 UIElement 有焦點時放開鍵盤按鍵時。 (繼承來源 UIElement) |
LayoutUpdated |
發生于視覺化樹狀結構的版面配置變更時,因為配置相關屬性變更值或重新整理版面配置的其他動作。 (繼承來源 FrameworkElement) |
Loaded |
發生于 架構Element 已建構並新增至物件樹狀結構,並準備好進行互動時。 (繼承來源 FrameworkElement) |
Loading |
當 FrameworkElement 開始載入時發生。 (繼承來源 FrameworkElement) |
LosingFocus |
發生于 UIElement 失去焦點之前。 此事件會同步引發,以確保事件反升時不會移動焦點。 (繼承來源 UIElement) |
LostFocus |
發生于 UIElement 失去焦點時。 此事件會以非同步方式引發,因此焦點可以在反升完成之前再次移動。 (繼承來源 UIElement) |
ManipulationCompleted |
發生于 UIElement 上的操作完成時。 (繼承來源 UIElement) |
ManipulationDelta |
輸入裝置在操作期間變更位置時發生。 (繼承來源 UIElement) |
ManipulationInertiaStarting |
在操作和慣性開始的時候,只要輸入裝置不與 UIElement 物件接觸便發生。 (繼承來源 UIElement) |
ManipulationStarted |
當輸入裝置開始在 UIElement 進行操作時發生。 (繼承來源 UIElement) |
ManipulationStarting |
發生於第一次建立操作處理器時。 (繼承來源 UIElement) |
MarkerReached |
發生于媒體播放期間遇到時間軸標記時。 |
MediaEnded |
當 MediaElement 完成播放音訊或視訊時發生。 |
MediaFailed |
發生于與媒體 來源相關聯的錯誤時。 |
MediaOpened |
發生于已驗證並開啟媒體資料流程,且已讀取檔頭時。 |
NoFocusCandidateFound |
發生于使用者嘗試透過索引標籤或方向箭號移動焦點 () ,但焦點不會移動,因為不會在移動方向找到任何焦點候選項目。 (繼承來源 UIElement) |
PartialMediaFailureDetected |
發生于一或多個資料流程無法在包含多個資料流程的內容中解碼時。 |
PointerCanceled |
發生于讓連絡人異常失去連絡人的指標時。 (繼承來源 UIElement) |
PointerCaptureLost |
發生于這個專案先前保留的指標擷取移至另一個專案或其他地方時。 (繼承來源 UIElement) |
PointerEntered |
發生于指標進入這個專案的點擊測試區域時。 (繼承來源 UIElement) |
PointerExited |
發生于指標離開這個專案的點擊測試區域時。 (繼承來源 UIElement) |
PointerMoved |
當指標在指標保留在這個專案的點擊測試區域中時移動時發生。 (繼承來源 UIElement) |
PointerPressed |
發生于指標裝置在這個專案內起始 Press 動作時。 (繼承來源 UIElement) |
PointerReleased |
發生于先前起始 按下 動作的指標裝置放開時,同時在此元素內。 請注意, 按下動作的 結尾不保證會引發 PointerReleased 事件;其他事件可能會改為引發。 如需詳細資訊,請參閱。 (繼承來源 UIElement) |
PointerWheelChanged |
發生于指標滾輪的差異值變更時。 (繼承來源 UIElement) |
PreviewKeyDown |
在 UIElement 有焦點時按下鍵盤按鍵時發生。 (繼承來源 UIElement) |
PreviewKeyUp |
發生于 UIElement 有焦點時放開鍵盤按鍵時。 (繼承來源 UIElement) |
ProcessKeyboardAccelerators |
發生于按下 鍵盤快速鍵 (或快速鍵) 時。 (繼承來源 UIElement) |
RateChanged |
發生于 PlaybackRate 或 DefaultPlaybackRate 值變更時。 |
RightTapped |
發生于在指標位於 元素上方時發生右鍵輸入回應時。 (繼承來源 UIElement) |
SeekCompleted |
發生于要求搜尋作業的搜尋點準備好播放時。 |
SizeChanged |
發生于 ActualHeight 或 ActualWidth 屬性變更 FrameworkElement上的值時。 (繼承來源 FrameworkElement) |
Tapped |
發生于未處理的 點 選互動發生于這個專案的點擊測試區域。 (繼承來源 UIElement) |
Unloaded |
當這個物件不再連接到主物件樹狀結構時發生。 (繼承來源 FrameworkElement) |
VolumeChanged |
當 Volume 屬性的值變更時發生。 |