Exemple #1
0
        private void InitImages()
        {
            // ConditionalFormatting
            C1BitmapIcon conditionalFormattingBitmapIcon = GetBitmapIcon("ConditionalFormatting");

            if (!(conditionalFormattingBitmapIcon is null))
            {
                _ribbonMenuFormatting.IconSet.Add(conditionalFormattingBitmapIcon);
            }

            // Columns
            C1BitmapIcon columnsBitmapIcon = GetBitmapIcon("Columns");

            if (!(columnsBitmapIcon is null))
            {
                _ribbonMenuColumns.IconSet.Add(columnsBitmapIcon);
            }

            // Filter
            C1BitmapIcon filterBitmapIcon = GetBitmapIcon("Filter");

            if (!(filterBitmapIcon is null))
            {
                _ribbonButtonFilter.IconSet.Add(filterBitmapIcon);
            }

            Icon appIcon = Properties.Resources.App;

            Icon = appIcon;
        }
Exemple #2
0
        protected override FrameworkElement CreateCellContent(GridCellType cellType, object cellContentType, GridRow row)
        {
            if (cellType != GridCellType.Cell)
            {
                return(base.CreateCellContent(cellType, cellContentType, row));
            }
            var grid = new Grid();

            grid.Margin = Grid.CellPadding;
            grid.ColumnDefinitions.Add(new ColumnDefinition()
            {
                Width = GridLength.Auto
            });
            grid.ColumnDefinitions.Add(new ColumnDefinition());
            var bitmapImage = new C1BitmapIcon()
            {
                Width = IconWidth, ShowAsMonochrome = ShowAsMonochrome, Margin = new Thickness(0, 0, 5, 0), VerticalAlignment = VerticalAlignment.Center
            };
            var textBlock = new TextBlock()
            {
                VerticalAlignment = VerticalAlignment.Center
            };

            System.Windows.Controls.Grid.SetColumn(textBlock, 1);
            grid.Children.Add(bitmapImage);
            grid.Children.Add(textBlock);
            return(grid);
        }
Exemple #3
0
        private void InitImages()
        {
            // ConditionalFormatting
            C1BitmapIcon conditionalFormattingBitmapIcon = GetBitmapIcon("ConditionalFormatting");

            if (!(conditionalFormattingBitmapIcon is null))
            {
                _ribbonMenuFormatting.IconSet.Add(conditionalFormattingBitmapIcon);
            }

            // Columns
            C1BitmapIcon columnsBitmapIcon = GetBitmapIcon("Columns");

            if (!(columnsBitmapIcon is null))
            {
                _ribbonMenuColumns.IconSet.Add(columnsBitmapIcon);
            }

            // Filter
            C1BitmapIcon filterBitmapIcon = GetBitmapIcon("Filter");

            if (!(filterBitmapIcon is null))
            {
                _ribbonButtonFilter.IconSet.Add(filterBitmapIcon);
            }

            // Export to Excel
            C1BitmapIcon excelIcon = GetBitmapIcon("Excel");

            if (!(excelIcon is null))
            {
                _exportToExcell.IconSet.Add(excelIcon);
            }

            // Export to Csv
            C1BitmapIcon csvIcon = GetBitmapIcon("Csv");

            if (!(csvIcon is null))
            {
                _exportToCsv.IconSet.Add(csvIcon);
            }

            // Export to Pdf
            C1BitmapIcon pdfIcon = GetBitmapIcon("Pdf");

            if (!(pdfIcon is null))
            {
                _exportToPdf.IconSet.Add(pdfIcon);
            }

            Icon appIcon = Properties.Resources.App;

            Icon = appIcon;
        }
Exemple #4
0
        private async void TrySetBitmapSource(C1BitmapIcon bitmapIcon, GridCellType cellType, GridRow row)
        {
            CacheBitmapSourceGetterFunction();
            if (_imageSourceGetter == null)
            {
                bitmapIcon.Source = DefaultBitmapSource;
                return;
            }

            var value = _imageSourceGetter.Invoke(row.DataItem);

            if (value is ImageSource imageSource)
            {
                bitmapIcon.Source = imageSource;
            }
            else
            {
                var tag = Guid.NewGuid();
                // In case the backspace button is pressed
                // the cell value will be null, and the DefaultBitmapSource
                // is a non-transparent renderable image, so image source is set to null to make
                // cell visually appear empty
                if (Grid.GetCellValue(cellType, row, this) == null)
                {
                    bitmapIcon.Source = null;
                }
                else
                {
                    bitmapIcon.Source = DefaultBitmapSource;
                }
                bitmapIcon.Tag = tag;

                try
                {
                    Uri imageSourceUrl = value as Uri;
                    if (value is string)
                    {
                        imageSourceUrl = new Uri(value as string);
                    }
                    var responseStream = await _httpClient.GetStreamAsync(imageSourceUrl);

                    if (!(bitmapIcon.Tag is Guid) || ((Guid)bitmapIcon.Tag) != tag)
                    {
                        return;
                    }

                    var bitmapImage = new BitmapImage();
                    using (var memoryStream = new MemoryStream())
                    {
                        await responseStream.CopyToAsync(memoryStream);

                        if (!(bitmapIcon.Tag is Guid) || ((Guid)bitmapIcon.Tag) != tag)
                        {
                            return;
                        }

                        bitmapImage.BeginInit();
                        bitmapImage.CacheOption  = BitmapCacheOption.OnLoad;
                        bitmapImage.StreamSource = memoryStream;
                        bitmapImage.EndInit();
                        bitmapImage.Freeze();
                    }
                    bitmapIcon.Source = bitmapImage;
                }
                catch { }
            }
        }