aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.Touch/Controls/MessageBoxVM.cs
blob: 0330c3cb1a382dea755145cadf510d40846fd594 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
using FontAwesome.WPF;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using Tango.SharedUI;

namespace Tango.Touch.Controls
{
    public class MessageBoxVM : DialogViewVM
    {
        public String Title { get; set; }

        public TouchIconKind Icon { get; set; }

        public Brush Brush { get; set; }

        public String Message { get; set; }

        public bool HasCancel { get; set; }
    }
}
pan>get { return (GridLength)GetValue(RowHeightProperty); } set { SetValue(RowHeightProperty, value); } } public static readonly DependencyProperty RowHeightProperty = DependencyProperty.Register("RowHeight", typeof(GridLength), typeof(TableGrid), new FrameworkPropertyMetadata(new GridLength(1, GridUnitType.Star), FrameworkPropertyMetadataOptions.AffectsRender)); public Thickness SecondRowMargin { get { return (Thickness)GetValue(SecondRowMarginProperty); } set { SetValue(SecondRowMarginProperty, value); } } // Using a DependencyProperty as the backing store for SecondRowMargin. This enables animation, styling, binding, etc... public static readonly DependencyProperty SecondRowMarginProperty = DependencyProperty.Register("SecondRowMargin", typeof(Thickness), typeof(TableGrid), new PropertyMetadata(new Thickness(20, 0, 0, 0))); public bool MakeFirstColumnVerticalAlignmentBottom { get { return (bool)GetValue(MakeFirstColumnVerticalAlignmentBottomProperty); } set { SetValue(MakeFirstColumnVerticalAlignmentBottomProperty, value); } } public static readonly DependencyProperty MakeFirstColumnVerticalAlignmentBottomProperty = DependencyProperty.Register("MakeFirstColumnVerticalAlignmentBottom", typeof(bool), typeof(TableGrid), new PropertyMetadata(true)); public TableGrid() { ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Auto) }); ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Star) }); this.Loaded += TableGrid_Loaded; } private void TableGrid_Loaded(object sender, RoutedEventArgs e) { InvalidateGrid(); } protected override void OnVisualChildrenChanged(DependencyObject visualAdded, DependencyObject visualRemoved) { base.OnVisualChildrenChanged(visualAdded, visualRemoved); InvalidateGrid(); } protected override Size ArrangeOverride(Size arrangeSize) { return base.ArrangeOverride(arrangeSize); } private void InvalidateGrid() { RowDefinitions.Clear(); RowDefinitions.Add(new RowDefinition() { Height = RowHeight }); int currentRow = 0; for (int i = 0; i < Children.Count; i++) { try { SetRow(Children[i], currentRow); if (i % 2 != 0) { SetColumn(Children[i], 1); if ((Children[i] as FrameworkElement).Margin == new Thickness()) { (Children[i] as FrameworkElement).Margin = SecondRowMargin; } currentRow++; RowDefinitions.Add(new RowDefinition() { Height = RowHeight }); } if (MakeFirstColumnVerticalAlignmentBottom) { (Children[i] as FrameworkElement).VerticalAlignment = VerticalAlignment.Bottom; } } catch { } } } } }