Denis Gladkikh
Russian   |  English

Selected Tag: Silverlight

Windows Phone 7 Silverlight: Behaviors for TextBox

I’ve submitted my first application for Windows Phone! It is very simple app. Marketplace has a good amount of similar apps: Planning Poker. Anyway, I’ve wrote couple own behaviors for TextBox and want to share this code with you.

If you are Silverlight/WPF developer and have already used Blend than you should know what are Behaviors and Interactions. If not or if you forget what is it I will remind you. You can find these libraries in directory “c:\Program Files (x86)\Microsoft SDKs\Expression\Blend\” (in case if you have Windows x86 than you should remove from path (x86)). And of course these libraries exist only in case if Blend has been installed. In this directory you can find packs of libraries for WPF/Silverlight and WindowsPhone. If you don’t know what are Behaviors and Interaction I suggest you to read Expression Blend SDK for Windows Phone on MSDN. In few words: this is approach to extend default control’s features, more than! this approach allows you to use MVVM pattern.

Let’s extend some features of default TextBox control.



Silverlight 4 in Action

pbrown_cover150Silverlight 4 in Action (Manning, Pete Brown) – this is second book, which I read about Silverlight. First was Pro Silverlight 3 in C# (Apress, Matthew MacDonald), which helped me when I was need to very quickly know more about Silverlight after WPF. After reading Silverlight 4 in Action I think that this is best book about Silverlight. But maybe I should compare this book with Pro Business Applications with Silverlight.

I think that most of Silverlight and WPF developers know book’s author’s blog Pete Brown. Since 2009 author is Microsoft employee, since 2007 Silverlight became the main technology of development for him. You can think that Silverlight 4 in Action is second edition, because Manning has also Silverlight 2 in Action, which I didn’t read. But Silverlight 2 in Action has different authors than SL4 in Action. So talk about what’s new in Silverlight 4 in Action is no good, it is different book, written by another author. Looks like this is first book of Pete Brown, and it is written very good.

After buying paper book you will get also free e-book version (pdf), which you can read with Kindle device for example (only in album rotation). The book has about 800 pages, has 3 parts and 25 chapters.




Silverlight basics. Validation. Part 1. DataAnnotations & ValidatesOnExceptions

Silverlight 4 has some new ways for validate input values (some new approaches to implement validation in your application). First approach is DataAnnotation. In this case you should describe validation rules with attributes. Two other ways (both of them is came with Silverlight 4) – you should implement one of interfaces for your ViewModel: IDataErrorInfo or INotifyDataErrorInfo. I want to talk about all of these approaches, about pros and cons of using each of them. Goal of this article to get a best way to implement validation of input values in my and your applications. This part of article about DataAnnotations.



RESTful WCF Service – How to get browser version at server code

At our product we have a client Silverlight part and server-code part, which contains a lot of WCF methods. We don’t use ASP.NET Compatible mode, because we want to leave an opportunity to deploy server part to server without web-server role (without IIS). Really, I don’t know why we chose this way, because all of our installations at current moment are on IIS. But we have what we have, so we haven’t ASP.NET Compatible mode, and as an expected result we can’t get HttpContext.Current instance at server WCF methods. One of WCF Service is a RESTful service, which at his methods returns report files, so it can handle GET-queries from browsers.



Export data to Excel from Silverlight/WPF DataGrid

Data export from DataGrid to Excel is very common task, and it can be solved with different ways, and chosen way depend on kind of app which you are design. If you are developing app for enterprise, and it will be installed on several computes, then you can to advance a claim (system requirements) with which your app will be work for client. Or customer will advance system requirements on which your app should work. In this case you can use COM for export (use infrastructure of Excel or OpenOffice). This approach will give you much more flexibility and give you possibility to use all features of Excel app. About this approach I’ll speak below. Other way – your app is for personal use, it can be installed on any home computer, in this case it is not good to ask user to install MS Office or OpenOffice just for using your app. In this way you can use foreign tools for export, or export to xml/html format which MS Office can read (this approach used by JIRA). But in this case will be more difficult to satisfy user tasks, like create document with landscape rotation and with defined fields for printing.

At this article I'll show you how to work with Excel object from .NET 4 and Silverlight 4 with dynamic objects and give you an approach which allow you to export data from DataGrid Silverlight and WPF controls.