Kódy farieb a kopírovanie obsahu do schránky

Pri tvorbe používateľského rozhrania som občas narazil na to, akú farbu vybrať. Intellisense síce ponúkne zoznam kódov farieb, ale bohužiaľ nezobrazí farebný vzorkovník. Jedno z riešení je prepnúť sa do Blendu, či kúzliť v okne Properties. Ten istý problém som mal vo vývojovom prostredí Microsoft “Project Siena”, kde sú len jednoduché farby, ale dá sa zadať slovný kód farby. Preto som sám pre seba urobil jednoduchú aplikáciu Colors for Developers. Dal som ju do Windows Store, možno poslúži aj niekomu inému http://apps.microsoft.com/windows/app/colors-for-developers/851005f0-98ad-475e-8a5a-65f5f43a4eb7. Po výbere farby sa jej kód aj názov uložia do clipboardu odkiaľ sa dajú vložiť do ľubovoľného vývojového prostredia, či aplikácie. Zdrojovka aplikácie je na pár riadkov.

GriedView pre zobrazenie vzorkovníka farieb s názvami

<GridView Grid.Row=”1″ x:Name=”gw” ItemsSource=”{Binding}” IsItemClickEnabled=”True”

SelectionMode=”None” ItemClick=”gw_ItemClick” Margin=”60,0,0,0″ >
<GridView.ItemTemplate>
<DataTemplate>
<Grid Height=”40″ Width=”120″ ToolTipService.ToolTip=”Click to copy to Clipboard.”>
<Grid.Background>
<SolidColorBrush Color=”{Binding Color}” />
</Grid.Background>
<StackPanel VerticalAlignment=”Top”>
<StackPanel.Background>
<SolidColorBrush Color=”Black” Opacity=”.75″ />
</StackPanel.Background>
<TextBlock FontSize=”12″ Margin=”3,0,0,0″ Foreground=”White” FontFamily=”Global User Interface”>
<Run Text=”{Binding Name}” />
</TextBlock>
</StackPanel>
</Grid>
</DataTemplate>
</GridView.ItemTemplate>
</GridView>
Vytvorenie dátového zdroja pre GridView

var _Colors = typeof(Colors).GetRuntimeProperties().Select(c => new
{
Color = (Color)c.GetValue(null),
Name = c.Name,
});
this.DataContext = _Colors;

Pre ukladanie vybraného kódu do schránky som použil obsluhu udalosti

private void gw_ItemClick(object sender, ItemClickEventArgs e)
{
var cc = e.ClickedItem; //{ Color = #FFD2691E, Name = Chocolate }
string ss = cc.ToString(); ss = ss.Replace(“{ Color = “, “”); ss = ss.Replace(“Name = “, “”); ss = ss.Replace(” }”, “”);
tbColor.Text = ss;
DataPackage dataPackage = new
DataPackage();
dataPackage.RequestedOperation = DataPackageOperation.Copy;
dataPackage.SetText(ss);
Clipboard.SetContent(dataPackage);
}

Aplikácia má povolený aj Snapped režim so šírkou 320 pixelov aby sa dala pripnúť vedľa vývojového prostredia a zaberala na obrazovke čo najmenej miesta.

Aplikácia výborne funguje aj s vývojovým prostredím Microsoft “Project Siena”

Reklamy

Pridaj komentár

Zadajte svoje údaje, alebo kliknite na ikonu pre prihlásenie:

WordPress.com Logo

Na komentovanie používate váš WordPress.com účet. Odhlásiť sa / Zmeniť )

Twitter picture

Na komentovanie používate váš Twitter účet. Odhlásiť sa / Zmeniť )

Facebook photo

Na komentovanie používate váš Facebook účet. Odhlásiť sa / Zmeniť )

Google+ photo

Na komentovanie používate váš Google+ účet. Odhlásiť sa / Zmeniť )

Connecting to %s


%d bloggers like this: