using System;
using System.Collections.Generic;
using Xamarin.Forms;
using Aurora.Design.Components.HorizontalList;
namespace Aurora.Design.Components.MemberList
{
public partial class MemberList : ContentView
public MemberList()
InitializeComponent();
}
/// <summary>
/// Bindable property for members list.
/// </summary>
/// <param name=""Members""></param>
/// <param name="typeof(IEnumerable<string>"></param>
/// <returns></returns>
public static readonly BindableProperty MembersProperty =
BindableProperty.Create(propertyName: "Members",
returnType: typeof(IEnumerable<string>),
declaringType: typeof(MemberList),
defaultBindingMode: BindingMode.Default,
propertyChanged: OnMembersChanged);
/// Backing property for MembersProperty
/// <value></value>
public IEnumerable<string> Members
get
return (IEnumerable<string>)GetValue(MembersProperty);
set
SetValue(MembersProperty, value);
/// Memberes changed event handler. Assign member list source.
/// <param name="bindable"></param>
/// <param name="oldValue"></param>
/// <param name="newValue"></param>
private static void OnMembersChanged(BindableObject bindable, object oldValue, object newValue)
var control = (MemberList)bindable;
var membersList = control.FindByName("MembersHorizontalList") as HorizontalList.HorizontalList;
if (membersList != null)
membersList.ItemsSource = newValue as IEnumerable<string>;