BeeMobile.SegmentedDisplay.AVA 11.0.0.2

dotnet add package BeeMobile.SegmentedDisplay.AVA --version 11.0.0.2
NuGet\Install-Package BeeMobile.SegmentedDisplay.AVA -Version 11.0.0.2
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="BeeMobile.SegmentedDisplay.AVA" Version="11.0.0.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add BeeMobile.SegmentedDisplay.AVA --version 11.0.0.2
#r "nuget: BeeMobile.SegmentedDisplay.AVA, 11.0.0.2"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install BeeMobile.SegmentedDisplay.AVA as a Cake Addin
#addin nuget:?package=BeeMobile.SegmentedDisplay.AVA&version=11.0.0.2

// Install BeeMobile.SegmentedDisplay.AVA as a Cake Tool
#tool nuget:?package=BeeMobile.SegmentedDisplay.AVA&version=11.0.0.2

Bee Mobile Copyright (c) 2023

Bee Mobile Segmented Display

BeeMobile.SegmentedDisplay.AVA is .NET 6.0 based Avalonia Framework TemplatedControl which can be used to draw a segmented display into Graphical User Interface. Give your application a unique 80s-like look. The component is extremely easy to use. Just throw it into one of your controls (e.g., Grid) and let it do the work.

Content of SegmentedDisplay is specified by its Text property.

screenshot

NuGet

BeeMobile.SegmentedDisplay.AVA is delivered as a NuGet package.

Usage Example

Put into your view:


 <Window xmlns="https://github.com/avaloniaui"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:bm="using:BeeMobile.SegmentedDisplay"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        mc:Ignorable="d" d:DesignWidth="1024" d:DesignHeight="600"
        Width="640"
        Height="480"
        x:Class="SegmentedDislay.Tester.MainWindow"
        Icon="/Assets/avalonia-logo.ico"
        Title="My lovely Segmented Display">

  <Grid RowDefinitions="*,*" HorizontalAlignment="Left" VerticalAlignment="Center" >
    <bm:SegmentedDisplay Grid.Row="0" Margin="10" />
    <bm:SegmentedDisplay Grid.Row="1" Margin="10"  x:Name="sdClock"  Foreground="White" /> 
  </Grid>
</Window>

The code-behind:


public partial class MainWindow : Window
    {

        Timer? m_Timer;
        private bool m_bColonVisible;
        public MainWindow()
        {
            InitializeComponent();
            this.m_Timer = new Timer(this.OnTimerChanged, null, 0, 1000);
            this.m_bColonVisible = false;
        }

        protected override void OnClosed(EventArgs e)
        {
            base.OnClosed(e);
            this.m_Timer?.Change(Timeout.Infinite, Timeout.Infinite);
            this.m_Timer?.Dispose();
            this.m_Timer = null;
        }


        private void OnTimerChanged(object? state)
        {
            string sMaybeColon = this.m_bColonVisible ? ":" : " ";
            this.m_bColonVisible = !this.m_bColonVisible;
            Dispatcher.UIThread.Post(() => this.sdClock.Text = DateTime.Now.ToString($"HH{sMaybeColon}mm"));
        }
    }

About

Brought to you by Bee Mobile: https://beemobile4.net/products/apack

https://beemobile4.net/products/apack/segmenteddisplay

License

VERSION HISTORY


Version: 11.0.0.2 - July 7, 2023

Update type Description
FIX Setting of Foreground property did not work.

11.0.0.1 - June 22, 2023

The first version!

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
11.0.0.2 73 4/19/2024
1.0.0 138 6/22/2023

The first release.