Используется хэш двойника, а не сам двойной.
Редактировать: Спасибо, Джон, я на самом деле этого не знал.
Я не уверен в это (вы должны просто посмотреть исходный код объекта Double), но я думаю, что любые проблемы с сравнениями с плавающей запятой будут позаботиться о вас.
вы можете использовать MessagingCenter для отправки вашего запроса направления экрана:
примерно так (например, на Android Ios похож на это):
в [ 112] ist зарегистрируйтесь MessagingCenter
, (имя и значение, которое вы можете указать)
MessagingCenter.Subscribe<string, int>("direction", "indext", (sender, args) => {
switch (args)
{
case 0:
RequestedOrientation = ScreenOrientation.Portrait; //mandatory vertical screen
break;
case 1:
RequestedOrientation = ScreenOrientation.Unspecified;//the default value
break;
}
});
и в Pages
отправьте сообщение:
protected override void OnAppearing()
{
base.OnAppearing();
MessagingCenter.Send<string, int>("direction", "indext", num);//num = 0:Mandatory vertical screen,num = 1 :restore default
}