예제 #1
0
        protected IDisposable CreateButton(IPropertyManagerPageGroup @group, string tip, string caption, Action onClick, Func <IPropertyManagerPageButton, IDisposable> config = null)
        {
            var id  = NextId();
            var box = PropertyManagerGroupExtensions.CreateButton(@group, id, caption, tip);
            var d0  = ButtonPressedObservable(id).Subscribe(_ => onClick());

            return(ControlHolder.Create(@group, box, d0, config?.Invoke(box) ?? Disposable.Empty));
        }
        protected IDisposable CreateButton(IPropertyManagerPageGroup @group, string tip, string caption, Action onClick)
        {
            var id  = NextId();
            var box = PropertyManagerGroupExtensions.CreateButton(@group, id, caption, tip);
            var d0  = ButtonPressedObservable(id).Subscribe(_ => onClick());

            return(ControlHolder.Create(@group, box, d0));
        }
예제 #3
0
        protected IDisposable CreateTextBox(IPropertyManagerPageGroup @group, string caption, string tip, Func <string> get, Action <string> set)
        {
            var id   = NextId();
            var text = PropertyManagerGroupExtensions.CreateTextBox(@group, id, caption, tip);

            text.Text = get();
            var d = TextBoxChangedObservable(id).Subscribe(set);

            return(ControlHolder.Create(@group, text, d));
        }
예제 #4
0
        protected IDisposable CreateListBox(IPropertyManagerPageGroup @group, string caption, string tip, Func <int> get, Action <int> set, Action <IPropertyManagerPageListbox> config)
        {
            var id   = NextId();
            var list = PropertyManagerGroupExtensions.CreateListBox(@group, id, caption, tip);

            config(list);
            list.CurrentSelection = (short)get();
            var d = ListBoxSelectionObservable(id).Subscribe(set);

            return(ControlHolder.Create(@group, list, d));
        }