2016-11-22 93 views
2

我在Xamarin.Forms中使用DisplayAlert()方法。 Internally它使用MessageDialog自定義MessageDialog風格

如何在PointerOver,Pressed等不同事件中更改ok和cancel按鈕的樣式?

Here一個確實執行它自己的ContentDialogstyle。其他嘗試覆蓋一些筆刷,其缺點是其他的東西也改變了。

有沒有人得到它成功地只覆蓋了MessageDialog風格/控制模板?

回答

2

不幸的是,除了所顯示的文本和按鈕,你不能自定義MessageDialog可言。

我認爲最簡單的解決方案是創建自己的IDialogService,這將是PCL中的接口和DisplayDialog方法。該方法將具有與Xamarin.FormsDisplayAlert方法相同的參數。

現在您將在每個平臺上提供此接口的實現。在Android和iOS的情況下,我想你想保持當前行爲不變,所以DisplayDialog方法的實現可以直接調用Xamarin的DisplayAlert,只是傳遞參數。

在Windows的情況下,可以再顯示自定義ContentDialog

的寫作平臺,具體服務的一個例子是available in Xamarin Documentation