![](/img/trans.png)
[英]How to avoid Fluctuation in show and hide UI controls in Xamarin forms iOS?
[英]How to Hide and Show a item in a List in Xamarin Forms
我想根據用戶權限隱藏一個項目,我想將布爾屬性與 GPS 跟蹤字段綁定,但我不知道該怎么做。
這是代碼
MenuItems = new ObservableCollection<MenuPageMenuItem>(new[]
{
new MenuPageMenuItem { Id = 0, Icon="ticket.png", Title = TranExtension.lang("MyTickets"), TargetType = typeof(TicketsPage) },
new MenuPageMenuItem { Id = 1, Icon="todayticket.png", Title = TranExtension.lang("TodayTickets"), TargetType = typeof(TodayTicketsPage)},
new MenuPageMenuItem { Id = 2, Icon="notsync.png", Title = TranExtension.lang("NotSyncronized"), TargetType = typeof( NotSyncronizedpage)},
new MenuPageMenuItem { Id = 3, Icon="location.png", Title = "Gps Tracking", TargetType = typeof( GpsTracking)},
new MenuPageMenuItem { Id = 4, Icon="settings.png", Title = TranExtension.lang("Configuration"), TargetType = typeof(ConfigurationPage)},
new MenuPageMenuItem { Id = 5, Icon="error.png", Title = TranExtension.lang("Close"), TargetType=typeof(ExitPage) },
});
}
您需要在MenuPageMenuItem
模型中添加一個屬性 IsEnable
public class MenuPageMenuItem
{
public int Id { get; set; }
public string Icon { get; set; }
public string Title { get; set; }
public bool IsEnable { get; set; }
//your properites
}
public class ClassName
{
public List<MenuPageMenuItem> MenuItems;
public ObservableCollection<MenuPageMenuItem> MenuItemsObs { get; set; }
public ClassName()
{
MenuItemsObs = new ObservableCollection<MenuPageMenuItem>();
MenuItems = new List<MenuPageMenuItem>(new[]
{
new MenuPageMenuItem { Id = 0,IsEnable =true , Icon="ticket.png", Title = TranExtension.lang("MyTickets"), TargetType = typeof(TicketsPage)},
new MenuPageMenuItem { Id = 1,IsEnable =true ,Icon="todayticket.png", Title = TranExtension.lang("TodayTickets"), TargetType = typeof(TodayTicketsPage) },
new MenuPageMenuItem { Id = 2,IsEnable =true , Icon="notsync.png", Title = TranExtension.lang("NotSyncronized"), TargetType = typeof(NotSyncronizedpage)},
new MenuPageMenuItem { Id = 3,IsEnable =true , Icon="location.png", Title = "Gps Tracking", TargetType = typeof(GpsTracking)},
new MenuPageMenuItem { Id = 4,IsEnable =true , Icon="settings.png", Title = TranExtension.lang("Configuration"), TargetType = typeof(ConfigurationPage)},
new MenuPageMenuItem { Id = 5,IsEnable =true , Icon="error.png", Title = TranExtension.lang("Close"), TargetType=typeof(ExitPage) },
});
SetMenuItems(MenuItems);
}
private void SetMenuItems(List<MenuPageMenuItem> menuItems)
{
foreach (var item in menuItems)
{
if (item.IsEnable)
MenuItemsObs.Add(item);
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.