Come abbiamo visto per altri contesti, come ad esempio i Behaviour, l'SDK di Expression Blend mette a disposizione una serie di librerie con le quali possiamo aggiungere una serie di funzionalità ai nostri progetti Silverlight.
Nell'assembly Microsoft.Expression.Drawing.dll, presente solitamente in
\Program Files (x86)\Microsoft SDKs\Expression\Blend\Silverlight\v4.0\Libraries\Microsoft.Expression.Drawing.dll, possiamo trovare il controllo Callout che ci permette di inserire vignette di diverse forme e ampiamente personalizzabili.
Dopo aver registrato, come di consueto, il namespace xml sullo schema "http://schemas.microsoft.com/expression/2010/drawing", l'utilizzo del controllo è estremamente semplice:
<UserControl x:Class="SilverlightItalia._128.MainPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:ed="http://schemas.microsoft.com/expression/2010/drawing" mc:Ignorable="d"> <Grid x:Name="LayoutRoot" Background="White"> <ed:Callout AnchorPoint="0,1" CalloutStyle="Oval" FontSize="15" Stroke="#FF4395A5" Width="150" Height="70" Margin="11,13,0,0"> <ed:Callout.Fill> <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0"> <GradientStop Color="#FF53C7DD" Offset="0" /> <GradientStop Color="White" Offset="1" /> </LinearGradientBrush> </ed:Callout.Fill> <ContentControl> <TextBlock Text="Oval" /> </ContentControl> </ed:Callout>
CallOut è un CompositeContentShape, classe astratta che eredita a sua volta da ContentControl. Per questo motivo un CallOut può mostrare a video qualunque altro oggetto vogliamo.
Con la proprietà CalloutStyle possiamo scegliere le quattro forme predefinite: Oval, RoundedRectangle, Rectangle e Cloud.
Di seguito alcuni esempi:
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Limitare le richieste lato server con l'interactive routing di Blazor 8
Cambiare la chiave di partizionamento di Azure Cosmos DB
Miglioramenti nell'accessibilità con Angular CDK
Copiare automaticamente le secret tra più repository di GitHub
Supportare il sorting di dati tabellari in Blazor con QuickGrid
Paginare i risultati con QuickGrid in Blazor
Generare file per il download da Blazor WebAssembly
Effettuare lo stream della risposta in ASP.NET Core tramite IAsyncEnumerable
Eseguire una GroupBy per entity in Entity Framework
Sfruttare lo streaming di una chiamata Http da Blazor
Personalizzare l'errore del rate limiting middleware in ASP.NET Core
Aggiungere interattività lato server in Blazor 8
I più letti di oggi
- Gestire la cancellazione di una richiesta in streaming da Blazor
- .NET Framework 3.0 rilasciato in RTM
- Community Days 2010: applicazioni con Windows Phone 7
- Disponibile la June 2011 CTP di Entity Framework
- Utilizzare il framework FluentValidation con ASP.NET Core
- Configurare più applicazioni in una web app di Azure
- Microsoft Security Bulletin MS05-041