Posts in 'web'
Studio for Silverlight and WPF 2010 v3 has landed and we are very excited about the new features and controls found in this version. This is one of the biggest releases we've had for the Silverlight and WPF studios when it comes to significant new controls and features. For instance, we have included 3 major new controls including a report viewer, pdf viewer and a 3D surface chart control! You can't find these controls anywhere else. We also enhanced ClearStyle throughout the entire suite which makes styling our controls much easier than any other Silverlight or WPF control you'll find.
We have been experimenting with Maps here at Wijmo HQ and thought it would be fun to make a few mapping apps using Wijmo. What better place to start than mapping our trip to jQuery Conference in Boston!
Last week we made Wijmo Complete a public repo on github, but had to hold off on the grid and charts. It was a tough call to make, but we were just doing too much re-factoring to release them.We spent the extra time to add some killer samples for the grid and charts too.
My recorded webinar, "Silverlight Grid for Easy Data Visualization" is up on Vimeo. You can see it here, http://www.vimeo.com/16241316. And as promised I've uploaded the Slides and Code. You can get them in the attachments.
The ICollectionView interface is the primary data view object in WPF. It's essentially a view of the underlying data source that allows you to manipulate your data without actually modifying the underlying values. You define your own rules for sorting, filtering and grouping, etc.
Background Story In this fictional example, we have a SQL Server/SSRS Server safe behind our firewall, and a web server in the DMZ. Our web server hosts a Silverlight application our field sales team uses for performance analysis. For this sample, we'll create a scheduled report, which will be saved on a network share. For simplicity, we'll save the files directly to the web server, although we could place these reports anywhere that can be accessed with network credentials. We'll create a simple web service, which will provide a list of reports to our application, and deliver the requested report. To perform this full demo on your own system, you'll need an SSRS report server in place. If you don't have that, a folder with some useful PDFs will suffice-just skip the next section. The end result of what we'll accomplish can be seen at http://demo.componentone.com/silverlight/reportviewer/. We're going to build most of this demo (PDF part only) in this post, the rest can be seen in the sample code. The sample code and pre-release bits can be downloaded via the announcement post at http://helpcentral.componentone.com/CS/silverlight_161/f/191/t/86680.aspx. Scheduling the Report Log in to your report server at http://[myserver]/reports/, and select the report you want to schedule. The report will open, and you should see a New Subscription button in the chrome above the report. If the chrome isn't present, check for a Subscriptions tab. If that's not present, check with your SSRS administrator to have your permissions adjusted. On the subscription page, we set the Report Delivery Options. It's simplest to share a folder from the web app, but that may not be the best architecture in your given environment. The most important setting below may be the credentials-this is where a lot of issues arise. These credentials will be used by SSRS to place the report on the file share. It's important to use a domain account, and to make sure that account has at least MODIFY permissions on the destination folder. A best practice is to create an account specifically for this purpose. We can also choose the schedule our report is created. After setting the schedule, click OK. When you get back to the report, it's a good idea to generate a PDF so we have a test file for building the WCF Service. Building the WCF Service Depending on your system architecture, you could either have the WCF and Silverlight apps in separate solutions, or put both in the same solution. Here, we'll do both in the same solution because it's a little easier for demo purposes. Start by creating a new Silverlight Application, targeting Silverlight 4. I've called my solution ReportViewerQuickStart. Since we're creating the WCF and Silverlight project in the same solution, we can choose to host our Silverlight app in a new web application, and add our service to that web application. When we create a Silverlight application in this manner, our solution contains two projects. One is the Silverlight project (named for the solution), and a web application called ReportViewerQuickStart.Web. ReportViewerQuickStart.Web is what will host our WCF service. To the web app, add a Resources folder. This is the folder we'll share to SSRS to save the reports in. Add our sample PDF report to this folder. Add a new WCF Service to the web app; I've named it ReportingService.svc. We need two operations for our sample-GetReportList(), which will provide the list of reports in the source folder to the client, and GetReportStream(), which will deliver the specific report to the client. In ReportingService.svc.cs, we need to add a "using" statement for System.IO, and implement GetReportList and GetReportStream (the complete file is found in the sample): public class ReportingService
Wish you knew more about Silverlight? Join the Silverlight firestarter presented by Microsoft on December 2nd to learn tips and more on using WCF, MVVM, Windows Phone 7, RIA Services, performance and more. It's completely free!
Things could not have gone better for us this weekend at jQuery Conference in Boston! We are so excited to have this much interest in our jQuery UI widgets. Did you know that we were just planning to announce the project at jQCon? Yeah, then Richard Worth told us that you (the jQuery community) are going to want to see some code ASAP. So that lit a fire under us to get our entire kit of Open Source widgets up on github. Needless to say we were hard at work during our 10 hour drive from Pittsburgh all the way up to 3 minutes before I walked on stage.
In the wonderful world of WPF development there are some things that are easier to do code and some things better left to XAML. For instance, in my previous webcast Charting 101, most of the work was done in C# code but the DataTemplates were done in XAML. I prefer to do most of my work in code so that it's all in one place, but creating a DataTemplate is something that is much easier to do in XAML. Plus, they can be loaded from code and assigned to other dynamic elements at runtime without much problem. But you might find yourself in a scenario where you need to completely generate a DataTemplate programmatically. How can you do it?
I am here at iPhone Dev Conn in sunny San Diego and just wrapped up my lightning talk on the hot debate of whether to start developing a native iPhone app or mobile web app. I feel strongly on the subject and it seemed like most attendees here liked the idea. So here it is...
In case you missed my webcast on MSDN, here are the video and slides. This webcast covered all of the different web development options we have in VS2010. We also take a look at how web development has evolved and exploded into a really rich set of options. It is worth a look if you are trying to wrap your head around everything in vs2010.