Controles Avalonia que o Avalonia Pro não traz

O sgcUI acrescenta a uma aplicação Avalonia 12 um agendador, um quadro Kanban, um gráfico de Gantt, uma grade dinâmica, um editor de diagramas, dashboards, assistentes, mapas e relatórios. Os controles rodam dentro da sua aplicação Avalonia, ao lado dos controles do Avalonia e do FluentTheme, e ao lado dos controles do Avalonia Pro, se você os usa. Para a grade, o gráfico, o visualizador de PDF e o editor de texto rico, o sgcUI também oferece um segundo modelo de licença. Este kit mostra os dois, com XAML de um exemplo que compila e passa no seu autoteste.

Equipes que criam aplicações desktop no Avalonia

Você mantém o Avalonia, o seu tema, as suas ferramentas e os seus view models. O sgcUI é um conjunto de controles que você adiciona, não um framework para o qual você migra.

Você usa o Avalonia Pro

Mantenha a sua assinatura e adicione os controles que não constam na página do Avalonia Pro: agendador, Gantt, Kanban, grade dinâmica, diagrama, dashboard, assistente, mapas e relatórios. Eles compartilham o prefixo XAML sgc, se ligam aos seus view models e seguem a variante de tema Fluent da sua aplicação.

Você está escolhendo um plano pago

Se a mudança no plano Community significa que a sua equipe agora precisa de um plano pago do Avalonia para os controles premium, compare as opções. O sgcUI tem a sua própria grade, gráfico, visualizador de PDF e editor de texto rico para o Avalonia, licenciados por desenvolvedor com o código-fonte C# completo, e as versões WinForms e WPF dos mesmos controles na mesma licença.

O que mudou no Avalonia: em um post de 7 de abril de 2026, o Avalonia anunciou "Today, alongside the release of Avalonia 12, we're retiring the Avalonia Accelerate brand entirely." O mesmo post diz "The Community tier is moving to non-commercial use only", com a mudança em vigor nesse dia para novos cadastros e nas semanas seguintes para os assinantes Community existentes. As organizações que usaram o plano Community comercialmente e se qualificavam pelos termos originais (receita anual abaixo de EUR 1 milhão) recebem 50% de desconto de transição em uma licença organizacional, e os assinantes Accelerate existentes mantêm a assinatura e os preços. Na página de preços do Avalonia (lida em 20/10/2026), o framework continua sendo um "MIT licensed UI framework" gratuito, o Plus custa EUR 299 por assento por ano, o Pro custa EUR 899 por assento por ano e o Enterprise começa em EUR 21.000 por ano com três assentos incluídos. Os preços não incluem IVA, e a página observa que "Seats are for developers doing UI work, not the whole team."

Controle por controle

A coluna Avalonia Pro lista o que as páginas do Avalonia nomeiam, lidas em 20/10/2026. "Não consta" significa apenas que o controle não está listado na página do Avalonia Pro.

Controle Avalonia Pro Controle Avalonia do sgcUI Produto sgcUI, edição .NET
Agendador (calendário)não consta na página do Avalonia ProTsgcAvaloniaSchedulersgcPlanner, .NET Enterprise
Ganttnão consta na página do Avalonia ProTsgcAvaloniaGanttsgcPlanner, .NET Enterprise
Kanbannão consta na página do Avalonia ProTsgcAvaloniaKanbansgcPlanner, .NET Enterprise
Grade dinâmicanão consta na página do Avalonia ProTsgcAvaloniaPivotGrid, TsgcAvaloniaPivotFieldListsgcPivotGrid, .NET Enterprise
Diagramanão consta na página do Avalonia ProTsgcAvaloniaDiagramViewsgcDiagram, .NET Enterprise
Dashboardnão consta na página do Avalonia ProTsgcAvaloniaDashboard, TsgcAvaloniaDashboardTile, TsgcAvaloniaKPICardsgcDashboard, .NET Professional
Assistentenão consta na página do Avalonia ProTsgcAvaloniaWizard, TsgcAvaloniaSteppersgcWizard, .NET Enterprise
Mapasnão consta na página do Avalonia ProTsgcAvaloniaMapsgcMaps, .NET Enterprise
Relatóriosnão consta na página do Avalonia ProTsgcAvaloniaReportDesigner, TsgcAvaloniaReportPreviewsgcReports, .NET Enterprise
Medidoresuma categoria "Gauge" na página ChartsTsgcAvalonia<Kind>GaugesgcGauges, .NET Professional
Grade de dadosTree DataGrid (Avalonia.Controls.TreeDataGrid), com modos plano e hierárquicoTsgcAvaloniaGrid, TsgcAvaloniaGridColumnsgcGrid, .NET Standard
GráficosCharts (Avalonia.Controls.Charts), "70+ chart types"TsgcAvaloniaChart, TsgcAvaloniaChartSeries, TsgcAvaloniaChartAxissgcCharts, .NET Professional
Visualizador de PDFPDF Viewer (Avalonia.Controls.PdfViewer)TsgcAvaloniaPDFViewer, TsgcAvaloniaPDFThumbnailView, TsgcAvaloniaPDFOutlineView; o sgcPDF também cria, edita e assina arquivos PDFsgcPDF, .NET Enterprise
Editor de texto ricoRich Text Editor (Avalonia.Controls.RichTextEditor)TsgcAvaloniaRichEdit; JSON, HTML, Markdown e RTF de entrada e saídasgcRichEdit, .NET Enterprise (somente Registrada)
Visualizador de Markdownsimsem visualizador dedicado; o TsgcAvaloniaRichEdit lê Markdown 
Reprodutor de mídiasimnão 
Teclado na telasimnão 

Todos os produtos acima também são vendidos como pacote individual. No Avalonia, a página Charts diz que o Pro "carries all seven premium components, 70+ chart types and the advanced tooling" e "Nothing on this page is a separate purchase."

Dois modelos de licença lado a lado

Em 20/10/2026. Os preços do Avalonia são da página de preços do Avalonia, e os do sgcUI da página de preços do sgcUI.

  Avalonia Pro sgcUI para .NET
Modeloassinatura por assento, cobrança anual ou mensallicença por desenvolvedor com 1 ano de atualizações incluído: Single, Team (2 desenvolvedores) ou Site (ilimitada)
PreçoEUR 899 por assento por ano, sem IVA.NET Standard €380, .NET Professional €529, .NET Enterprise €699 por desenvolvedor
Produtos individuaisnão são vendidos separadamentepor exemplo sgcGrid .NET €199, sgcCharts .NET €199, sgcDashboard .NET €199, sgcPlanner .NET €249, sgcPivotGrid .NET €249, sgcDiagram .NET €249, sgcPDF .NET €249, sgcRichEdit .NET €299
Renovaçãoassinatura anualdesconto de renovação de 50% (Standard), 60% (Professional) e 70% (Enterprise)
Código-fontecódigo-fonte completo dos controles premium no Enterprisecódigo-fonte C# completo em toda edição Registrada e em todo pacote individual
Redistribuiçãonão consta nas páginas lidasredistribuição binária gratuita em todas as edições
Plataformas de interfaceAvaloniaWinForms, WPF e Avalonia em toda edição .NET
Plano gratuitoCommunity, somente uso não comercial para novos cadastros desde 07/04/2026Pacotes NuGet Community, gratuitos em projetos comerciais e não comerciais para uma pessoa ou organização com receita bruta anual abaixo de EUR 1.000.000 e no máximo cinco desenvolvedores, com limites de recursos por produto. O sgcRichEdit e o sgcMaps para .NET não têm pacote Community.

Os quatro controles do exemplo que não constam na página do Avalonia Pro (planejador, grade dinâmica, diagrama e dashboard) vêm juntos no .NET Enterprise, ou um a um como pacotes individuais. O Avalonia Plus e o Pro também incluem ferramentas do fornecedor, como Hot Reload, DevTools e as extensões do Visual Studio e do VS Code. O sgcUI são apenas componentes, então mantenha o plano do Avalonia de que a sua equipe precisa para as ferramentas.

O sgcUI em uma janela Avalonia 12

Cada trecho é copiado do exemplo AvaloniaProAlternative, uma aplicação Avalonia 12 em net8.0 com bindings compilados e FluentTheme, que compila em Release para as edições Registrada e Community com 0 avisos na demo e passa no seu autoteste. Não há código do Avalonia Pro aqui: esta página mostra apenas código que foi compilado.

Um prefixo XAML para todos os produtos

Cada assembly Avalonia do sgcUI mapeia os seus controles para um único URI de namespace, então um só prefixo sgc cobre todos eles, ao lado do namespace padrão do Avalonia:

MainWindow.axaml
<Window xmlns="https://github.com/avaloniaui"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:sgc="https://www.esegece.com/sgcui"
        xmlns:vm="using:sgcUIAvaloniaPro"
        x:Class="sgcUIAvaloniaPro.MainWindow"
        x:DataType="vm:TMainViewModel"
        Title="sgcUI next to Avalonia 12: the controls Avalonia Pro does not ship" Width="1240" Height="820">

Não consta no Avalonia Pro: agendador e Kanban sobre uma lista de tarefas

As duas visões se ligam à mesma coleção Tasks do view model. O TsgcAvaloniaPlannerItemFields mapeia os membros da sua própria classe de tarefa, e um arrasto em qualquer das visões grava Begin, End ou Stage de volta na tarefa:

MainWindow.axaml
<sgc:TsgcAvaloniaScheduler x:Name="scheduler" ItemsSource="{Binding Tasks}"
                           ResourcesSource="{Binding People}" SelectedItem="{Binding Selected}">
  <sgc:TsgcAvaloniaScheduler.ItemFields>
    <sgc:TsgcAvaloniaPlannerItemFields IdField="Key" TitleField="Name" StartField="Begin"
                                       FinishField="End" ResourcesField="Owner" StatusField="Stage"/>
  </sgc:TsgcAvaloniaScheduler.ItemFields>
  <sgc:TsgcAvaloniaScheduler.ResourceFields>
    <sgc:TsgcAvaloniaPlannerResourceFields IdField="Code" NameField="Label"/>
  </sgc:TsgcAvaloniaScheduler.ResourceFields>
</sgc:TsgcAvaloniaScheduler>
<sgc:TsgcAvaloniaKanban x:Name="kanban" Grid.Row="1" Margin="0,8,0,0" ColumnSource="pkcList"
                        ItemsSource="{Binding Tasks}" ResourcesSource="{Binding People}"
                        SelectedItem="{Binding Selected}">
  <sgc:TsgcAvaloniaKanban.ItemFields>
    <sgc:TsgcAvaloniaPlannerItemFields IdField="Key" TitleField="Name" StartField="Begin"
                                       FinishField="End" ResourcesField="Owner" StatusField="Stage"/>
  </sgc:TsgcAvaloniaKanban.ItemFields>
  <sgc:TsgcAvaloniaKanban.ResourceFields>
    <sgc:TsgcAvaloniaPlannerResourceFields IdField="Code" NameField="Label"/>
  </sgc:TsgcAvaloniaKanban.ResourceFields>
  <sgc:TsgcAvaloniaKanban.Columns>
    <sgc:TsgcAvaloniaKanbanColumn StatusId="todo" Caption="To do"/>
    <sgc:TsgcAvaloniaKanbanColumn StatusId="doing" Caption="In progress"/>
    <sgc:TsgcAvaloniaKanbanColumn StatusId="done" Caption="Done"/>
  </sgc:TsgcAvaloniaKanban.Columns>
</sgc:TsgcAvaloniaKanban>

Não consta: grade dinâmica com lista de campos

MainWindow.axaml
<sgc:TsgcAvaloniaPivotGrid x:Name="pivot" ItemsSource="{Binding Sales}">
  <sgc:TsgcAvaloniaPivotField FieldName="Region" Area="pvaRow" Caption="Region"/>
  <sgc:TsgcAvaloniaPivotField FieldName="Channel" Area="pvaRow" Caption="Channel"/>
  <sgc:TsgcAvaloniaPivotField FieldName="Product" Area="pvaColumn" Caption="Product"/>
  <sgc:TsgcAvaloniaPivotField FieldName="Amount" Area="pvaData" Aggregation="pvfSum" Caption="Sales"/>
</sgc:TsgcAvaloniaPivotGrid>
<sgc:TsgcAvaloniaPivotFieldList x:Name="fieldList" Grid.Column="1" Margin="8,0,0,0"
                                PivotGrid="{Binding #pivot}"/>

Não consta: um diagrama construído a partir de uma coleção

Um organograma a partir da coleção Employees e do seu membro pai. NodesSource e LinksSource são exclusivos da edição Registrada, então a versão Community do exemplo oculta esta aba.

Views\DiagramTab.axaml
<sgc:TsgcAvaloniaDiagramView x:Name="diagram"
                             NodesSource="{Binding Employees}" NodeKeyMember="Id" NodeLabelMember="Name"
                             NodeParentMember="ManagerId"
                             LinksSource="{Binding Links}" LinkFromMember="From" LinkToMember="To"
                             LinkLabelMember="Label"/>

Não consta: um dashboard de cartões KPI e um gráfico

Blocos em uma grade de 12 colunas, cada um hospedando um cartão KPI ou qualquer controle, ligados ao view model:

MainWindow.axaml
<sgc:TsgcAvaloniaDashboard x:Name="dashboard" Columns="12" RowHeight="110">
  <sgc:TsgcAvaloniaDashboardTile Title="Revenue" Col="0" Row="0" ColSpan="4" RowSpan="2">
    <sgc:TsgcAvaloniaKPICard x:Name="kpiRevenue" Title="Revenue this month" Value="{Binding Revenue}"
                             Trend="ktUp" FooterText="all channels"/>
  </sgc:TsgcAvaloniaDashboardTile>
  <sgc:TsgcAvaloniaDashboardTile Title="Orders" Col="4" Row="0" ColSpan="4" RowSpan="2">
    <sgc:TsgcAvaloniaKPICard x:Name="kpiOrders" Title="Orders" Value="{Binding Orders}"
                             Trend="ktUp" FooterText="this month"/>
  </sgc:TsgcAvaloniaDashboardTile>
  <sgc:TsgcAvaloniaDashboardTile Title="Support" Col="8" Row="0" ColSpan="4" RowSpan="2">
    <sgc:TsgcAvaloniaKPICard x:Name="kpiTickets" Title="Open tickets" Value="{Binding Tickets}"
                             Trend="ktDown" FooterText="help desk"/>
  </sgc:TsgcAvaloniaDashboardTile>
  <sgc:TsgcAvaloniaDashboardTile Title="Visits per day" Col="0" Row="2" ColSpan="12" RowSpan="3">
    <sgc:TsgcAvaloniaChart x:Name="chartVisits">
      <sgc:TsgcAvaloniaChartSeries ItemsSource="{Binding Visits}" XMember="Time" YMember="Value"
                                   Title="Visits" Color="#FF16A34A"/>
      <sgc:TsgcAvaloniaChart.Axes>
        <sgc:TsgcAvaloniaChartAxis Name="X" AxisType="catDateTime"/>
        <sgc:TsgcAvaloniaChartAxis Name="Y" Title="Visits"/>
      </sgc:TsgcAvaloniaChart.Axes>
    </sgc:TsgcAvaloniaChart>
  </sgc:TsgcAvaloniaDashboardTile>
</sgc:TsgcAvaloniaDashboard>

Também no Avalonia Pro: grade, gráfico, visualizador de PDF e texto rico

Quando você troca um controle que se sobrepõe, a visão muda e o view model permanece. A grade com colunas declaradas e um SelectedItem de duas vias:

MainWindow.axaml
<sgc:TsgcAvaloniaGrid x:Name="grid" x:DataType="vm:TGridViewModel" Margin="8"
                      ItemsSource="{Binding Customers}" SelectedItem="{Binding Selected}"
                      KeyMember="Id" AutoGenerateColumns="False">
  <sgc:TsgcAvaloniaGridColumn FieldName="Id" Caption="Id" Width="60" DataType="gdtInteger"/>
  <sgc:TsgcAvaloniaGridColumn FieldName="Name" Caption="Customer" Width="220"/>
  <sgc:TsgcAvaloniaGridColumn FieldName="City" Caption="City" Width="140"/>
  <sgc:TsgcAvaloniaGridColumn FieldName="Balance" Caption="Balance" Width="130" DataType="gdtFloat"
                              DisplayFormat="#,##0.00" Alignment="gaRight"/>
</sgc:TsgcAvaloniaGrid>

Um gráfico de linhas sobre um eixo de data e hora:

MainWindow.axaml
<sgc:TsgcAvaloniaChart x:Name="chartPrice" x:DataType="vm:TChartViewModel" Margin="8">
  <sgc:TsgcAvaloniaChartSeries ItemsSource="{Binding Prices}" XMember="Time" YMember="Value"
                               Title="Price" Color="#FF2563EB"/>
  <sgc:TsgcAvaloniaChart.Axes>
    <sgc:TsgcAvaloniaChartAxis Name="X" AxisType="catDateTime" Title="Time"/>
    <sgc:TsgcAvaloniaChartAxis Name="Y" Title="Price"/>
  </sgc:TsgcAvaloniaChart.Axes>
</sgc:TsgcAvaloniaChart>

Um visualizador de PDF com miniaturas, ligado a um TsgcPDFDocument do view model:

MainWindow.axaml
<sgc:TsgcAvaloniaPDFThumbnailView x:Name="pdfThumbs" Viewer="{Binding #pdfViewer}"/>
<sgc:TsgcAvaloniaPDFViewer x:Name="pdfViewer" Grid.Column="1" Margin="8,0,0,0"
                           Document="{Binding Document}" ZoomMode="zmFitWidth"/>

O view model constrói o documento com o sgcPDF, o salva na memória e o lê de volta, da maneira como um documento lido de um arquivo chega ao visualizador:

ViewModels\TOverlapViewModels.cs
// a three page A4 report written with sgcPDF, saved to memory and parsed back,
// the way a document read from a file or a stream reaches the viewer
private static TsgcPDFDocument DoBuild()
{
    byte[] vBytes;
    using (TsgcPDFDocument oWriter = new TsgcPDFDocument())
    {
        for (int i = 1; i <= CS_PAGES; i++)
        {
            TsgcPDFPage oPage = oWriter.AddPage(595, 842);
            oPage.DrawRectangleFill(0, 772, 595, 70, 0.12, 0.23, 0.54);
            oPage.DrawTextColor("Quarterly report, page " + i + " of " + CS_PAGES, 50, 800,
                TsgcPDFStandardFont.sfHelveticaBold, 20, 1, 1, 1);
            oPage.DrawText("Built in code with sgcPDF (TsgcPDFDocument) and shown by TsgcAvaloniaPDFViewer.", 50,
                730, TsgcPDFStandardFont.sfHelvetica, 12);
            oPage.DrawText("Search, zoom, thumbnails and text selection work on it like on any PDF file.", 50,
                710, TsgcPDFStandardFont.sfHelvetica, 12);
            for (int k = 0; k < 6; k++)
                oPage.DrawRectangleFill(60 + k * 80, 420, 50, 40 + ((i * 3 + k * 5) % 9) * 25, 0.15, 0.39, 0.92);
            oPage.DrawRectangle(40, 40, 515, 712, 1.0);
        }
        using (MemoryStream oStream = new MemoryStream())
        {
            oWriter.SaveToStream(oStream);
            vBytes = oStream.ToArray();
        }
    }
    TsgcPDFDocument vResult = new TsgcPDFDocument();
    vResult.LoadFromBytes(vBytes);
    return vResult;
}

O editor de texto rico, ligado como texto Markdown (o sgcRichEdit é exclusivo da edição Registrada):

Views\RichEditTab.axaml
<sgc:TsgcAvaloniaRichEdit x:Name="richEdit" Margin="8" DocumentFormat="refMarkdown"
                          DocumentText="{Binding Text}"/>
ViewModels\TOverlapViewModels.cs
public sealed class TRichTextViewModel : TViewModelBase
{
    private string FText =
        "# Release notes\n\nThe **sgcRichEdit** control is bound to this view model through " +
        "*DocumentText* in Markdown.\n\n- Styles, lists and tables\n- Links such as " +
        "[www.esegece.com](https://www.esegece.com)\n- HTML, RTF, Markdown and JSON in and out\n";

    /// <summary>The document as Markdown (DocumentFormat="refMarkdown"), written back on focus loss.</summary>
    public string Text
    {
        get { return FText; }
        set { DoSet(ref FText, value, "Text"); }
    }
}

O tema continua onde está

A aplicação mantém o FluentTheme. Os controles do sgcUI seguem a sua variante de tema, clara, escura ou a configuração do sistema operacional, e mudam ao vivo junto com os controles Fluent:

Program.cs
public override void Initialize()
{
    // the existing host theme stays: the sgcUI controls follow its theme variant
    Styles.Add(new FluentTheme());
    RequestedThemeVariant = ThemeVariant.Default;
}
ViewModels\TOverlapViewModels.cs
/// <summary>0 Follow host (RequestedThemeVariant Default), 1 Light, 2 Dark. The sgcUI controls
/// follow the Avalonia theme variant of the FluentTheme host (ThemeFollow utfHost).</summary>
public int ModeIndex
{
    get { return FModeIndex; }
    set
    {
        if (value < 0 || value > 2 || !DoSet(ref FModeIndex, value, "ModeIndex"))
            return;
        sgcUIApplication.ThemeFollow = TsgcUIThemeFollow.utfHost;
        sgcUIApplication.SetTheme(TsgcUITheme.utDefault);
        if (Application.Current != null)
            Application.Current.RequestedThemeVariant = value == 1 ? ThemeVariant.Light :
                value == 2 ? ThemeVariant.Dark : ThemeVariant.Default;
    }
}

Seis passos para adicionar o sgcUI a uma aplicação Avalonia

A aplicação continua funcionando depois de cada passo. Nada do que existe hoje precisa ser removido.

1

Mantenha a aplicação como está

Avalonia.Desktop, Avalonia.Themes.Fluent, as suas classes base MVVM e quaisquer controles do Avalonia Pro permanecem.

2

Adicione os pacotes

A versão Avalonia de cada produto de que você precisa, por exemplo esegece.sgcPlanner.Avalonia, esegece.sgcPivotGrid.Avalonia, esegece.sgcDiagram.Avalonia, esegece.sgcDashboard.Avalonia, esegece.sgcGrid.Avalonia, esegece.sgcCharts.Avalonia ou esegece.sgcPDF.Avalonia. Os pacotes Community gratuitos acrescentam o sufixo .Community, por exemplo esegece.sgcPlanner.Avalonia.Community.

3

Adicione um namespace

Coloque xmlns:sgc="https://www.esegece.com/sgcui" em cada view que usa o sgcUI. Um prefixo cobre todos os produtos.

4

Declare e ligue

Declare os controles em XAML e ligue-os aos view models existentes com ItemsSource, SelectedItem e mapas de campos como TsgcAvaloniaPlannerItemFields. Os bindings compilados com x:DataType funcionam.

5

Deixe o tema em paz

Mantenha Styles.Add(new FluentTheme()). Os controles do sgcUI seguem o RequestedThemeVariant, porque sgcUIApplication.ThemeFollow é utfHost por padrão.

6

Troque um controle que se sobrepõe, se quiser

Onde você substituir uma grade, um gráfico, um visualizador de PDF ou um editor de texto rico, troque o controle na view e mantenha o view model. Os membros a ligar estão listados abaixo.

Pacote do Avalonia Pro Controle do sgcUI e os membros a ligar
Avalonia.Controls.TreeDataGridTsgcAvaloniaGrid com ItemsSource, SelectedItem, KeyMember, AutoGenerateColumns="False" e TsgcAvaloniaGridColumn (FieldName, Caption, DataType, DisplayFormat, Alignment)
Avalonia.Controls.ChartsTsgcAvaloniaChart com TsgcAvaloniaChartSeries (ItemsSource, XMember, YMember, SeriesKind) e TsgcAvaloniaChartAxis (Name, AxisType="catDateTime")
Avalonia.Controls.PdfViewerTsgcAvaloniaPDFViewer (Document ou Source, ZoomMode, PageIndex, PageCount) e TsgcAvaloniaPDFThumbnailView.Viewer
Avalonia.Controls.RichTextEditorTsgcAvaloniaRichEdit (DocumentText de duas vias, DocumentFormat refJSON, refHTML, refMarkdown, refRTF ou refText, PlainText)

A coluna da esquerda nomeia apenas pacotes. Os membros do Avalonia Pro não foram comparados, então planeje as mudanças nas views contra o seu próprio XAML.

O que o Avalonia Pro tem e o sgcUI não tem

Se você precisa de algum destes, mantenha o Avalonia Pro para ele. O sgcUI funciona ao lado.

Antes de planejar

Limites de edição e nomes que importam em um projeto Avalonia.

AvaloniaProAlternative

Uma janela Avalonia 12 comum com FluentTheme, um seletor de tema e dois conjuntos de abas: "Not in Avalonia Pro" (agendador e Kanban, grade dinâmica, diagrama, dashboard) e "Also in Avalonia Pro" (grade, gráfico, visualizador de PDF, texto rico).

Onde está

Nas demos .NET do sgcUI, na pasta Suite\AvaloniaProAlternative da solução sgcUI_Demos.sln, com um readme.html. No download das demos, o projeto referencia os pacotes NuGet do sgcUI.

Como executá-la

dotnet build sgcUIAvaloniaProAlternative.csproj -c Release para a edição Registrada, e acrescente -p:SgcCommunity=true para a edição Community, na qual as abas Diagram e Rich text ficam ocultas. Depois execute sgcUIAvaloniaProAlternative.exe.

Autoteste

sgcUIAvaloniaProAlternative.exe /selftest [file.txt] mostra cada aba, executa as verificações, grava uma linha PASS ou FAIL por verificação e termina com o número de verificações que falharam. Todas as 52 verificações passam na edição Registrada e todas as 47 na edição Community.

Para ser justo com os dois: o Avalonia é o framework sobre o qual o sgcUI roda, e esta página não pede que você o abandone. O Avalonia Pro oferece componentes premium e ferramentas em uma só assinatura, e alguns deles não têm equivalente no sgcUI. O sgcUI oferece controles de planejamento, análise, diagrama, dashboard, assistente, mapa e relatório que não constam na página do Avalonia Pro, os mesmos controles para WinForms e WPF, e o código-fonte completo com uma licença por desenvolvedor. Muitas equipes usarão os dois. Para os produtos e as edições veja a página do produto sgcUI.

Melhor custo-benefício: All-AccessTodos os produtos da eSeGeCe, com Suporte Premium incluído, a partir de €1,059/ano.
Ver preços do All-Access

Adicione o primeiro controle hoje

Adicione os pacotes Community gratuitos do NuGet, ou os pacotes Registrados para ter todos os recursos e o código-fonte completo, e abra o exemplo AvaloniaProAlternative ao lado da sua aplicação.