示例#1
0
        public static DataTemplate VariableSizeTemplate()
        {
            var indexHeightConverter = new IndexRequestConverter(3, 50, 150);
            var indexWidthConverter  = new IndexRequestConverter(3, 100, 300);
            var colorConverter       = new IndexColorConverter();

            return(new DataTemplate(() =>
            {
                var layout = new Frame();

                layout.SetBinding(VisualElement.HeightRequestProperty, new Binding("Index", converter: indexHeightConverter));
                layout.SetBinding(VisualElement.WidthRequestProperty, new Binding("Index", converter: indexWidthConverter));
                layout.SetBinding(VisualElement.BackgroundColorProperty, new Binding("Index", converter: colorConverter));

                var image = new Image
                {
                    Aspect = Aspect.AspectFit
                };

                image.SetBinding(VisualElement.HeightRequestProperty, new Binding("Index", converter: indexHeightConverter));
                image.SetBinding(VisualElement.WidthRequestProperty, new Binding("Index", converter: indexWidthConverter));

                image.SetBinding(Image.SourceProperty, new Binding("Image"));

                layout.Content = image;

                return layout;
            }));
        }
示例#2
0
        private void UpdateInnerCircleColor()
        {
            var indexCalculator = IndexCalculatorCollection.CreateByName(Properties.Settings.Default.MapInnerCircleColorType);
            var palette         = PaletteCollection.GetByName(Properties.Settings.Default.MapInnerCirclePalette)
                                  .Palette;
            var colorCalculator = new IndexColorConverter(indexCalculator, palette);

            foreach (var curSystem in _solarSystems)
            {
                curSystem.InnerCircleColor = colorCalculator.GetBrush(curSystem);
            }
        }
示例#3
0
        public static DataTemplate RandomSizeTemplate()
        {
            var indexHeightConverter = new IndexRequestRandomConverter(50, 150);
            var indexWidthConverter  = new IndexRequestRandomConverter(50, 150);
            var colorConverter       = new IndexColorConverter();

            return(new DataTemplate(() =>
            {
                var layout = new Frame();

                layout.SetBinding(VisualElement.HeightRequestProperty, new Binding("Index", converter: indexHeightConverter));
                layout.SetBinding(VisualElement.WidthRequestProperty, new Binding("Index", converter: indexWidthConverter));
                layout.SetBinding(VisualElement.BackgroundColorProperty, new Binding("Index", converter: colorConverter));

                var label = new Label {
                    FontSize = 30
                };
                label.SetBinding(Label.TextProperty, new Binding("Index"));

                layout.Content = label;

                return layout;
            }));
        }