Silverlight Tutorial 2 – Dùng User Control để cho phép xem theo dạng Master/Detail (phần 1)

Đây là phần 6 trong loạt 8 bài hướng dẫn các bước để xây dựng một chương trình Digg đơn giản dùng bản Beta 1 của Silverlight 2. Các bài hướng dẫn này nên được đọc theo thứ tự, và sẽ giúp giải thích một số khái niệm cơ bản trong Silverrlight.
Bạn có thể download mã nguồn phiên bản hoàn chỉnh của chương trình mẫu Digg tại đây.
Vì bài này hơi dài nên tôi sẽ tách làm hai phần để tránh lỗi hiển thị trong My Opera.

Continue reading “Silverlight Tutorial 2 – Dùng User Control để cho phép xem theo dạng Master/Detail (phần 1)”

Cách truyền tham số cho một chương trình Silverlight

Để có thể truyền một tham số khởi tạo từ trang web vào cho chương trình Silverlight, các bạn có thể làm theo các bước sau:

Bước 1: Khai báo một tham số initParams cho Silverlight plug-in và truyền vào cho nó một tập các cặp tên-giá trị phân cách bởi dấu phẩy (,). Ví dụ: “key1=value1,key2=value2,key3=value3”

<object type="application/x-silverlight" 
        width="100%" height="100%"> 
  <param name="source" 
         value="ClientBin/SLInitParams.xap"/> 
  <!-- startPage key can have values Page1 or Page2 --> 
  <param name="initParams" 
         value="startPage=Page1" /> 
</object>

Các giá trị được truyền vào cho initParams nên là chữ hoặc số, hiện tại bạn cũng không thể truyền vào các giá trị là dấu bằng (=) hoặc dấu phẩy (,).

Bước 2: Trong hàm sự kiện Startup của Application, bạn có thể lấy ra tham số đã truyền vào thông qua thuộc tính StartupEventArgs.InitParams, thuộc tính này có kiểu IDictionary<string, string>.

// Contents of App.xaml.cs 
private void Application_Startup(object sender, 
                                   StartupEventArgs e) 
{ 
    string startPage = e.InitParams["startPage"]; 
    if (startPage != null && startPage.Equals("Page1")) 
    { 
       // Load Page1 
       this.RootVisual = new Page(); 
    } 
    else 
    { 
       // Load Page2 
       this.RootVisual = new AlternatePage(); 
    } 
}

Tương lai của Silverlight

Có lẽ bất cứ ai truy cập vào blog Nam Già đều dễ dàng nhận thấy hiện nay các bài viết chủ yếu tập trung vào công nghệ Silverlight, vậy Silverlight thực sự là gì, và tại sao tôi lại tin rằng tới bây giờ, chỉ có nó mới (có thể) có đủ sức mạnh để lật đổ ngôi thống trị của Flash.
Bản thân tôi tuy cũng biết về Flash và các kỹ thuật lập trình của nó, tuy nhiên có lẽ kiến thức đó không đủ sâu để so sánh điểm mạnh và yếu của nó so với Silverlight, do vậy trong bài này, tôi sẽ chỉ nhấn mạnh vào những điểm mạnh của bản thân Silverlight và những yếu tố sẽ hỗ trợ nó trên bước đường trở thành công nghệ RIA phổ biến nhất. Continue reading “Tương lai của Silverlight”

Cấu hình để lập trình Silverlight 2.0

Vừa qua tôi có nhận được một số câu hỏi về việc không thể tạo được các ứng dụng Silverlight 2.0 cho các bài học trong phần Tutorial, do vậy trong bài này tôi sẽ đưa ra danh sách các phần mềm cần có để có thể chạy được các ví dụ, danh sách này bao gồm:

– Visual Studio 2008 Professional: các bạn có thể tải về bản dùng thử 90 ngày từ trang web của Microsoft (http://msdn2.microsoft.com/en-us/evalcenter/bb655861.aspx), nhớ cập nhật thêm bản SP1

Microsoft® Silverlight™ Tools for Visual Studio 2008 SP1 (72,7 MB)

Nếu đã cài bất kỳ phiên bản nào của Silverlight hay Silverlight SDK, hãy gỡ bỏ trước khi chạy chương trình cài đặt Silverlight Tools for Visual Studio 2008 SP1.

Silverlight 2 Tutorial – Dùng ListBox và DataBinding để hiển thị dữ liệu

Trong những bài trước chúng ta đã dùng DataGrid để hiển thị kết quả tìm kiếm. DataGrid có thể chạy tốt khi chúng ta muốn hiển thị nội dung theo dạng một cột. Tuy nhiên đối với ứng dụng Digg, chúng ta muốn chỉnh sửa thêm giao diện một chút để nó trông giống một List hơn là một DataGrid. Một tin tốt lành là điều này tương đối dễ dàng – và nó không đòi hỏi chúng ta phải thay đổi bất kỳ đoạn lệnh nào. Continue reading “Silverlight 2 Tutorial – Dùng ListBox và DataBinding để hiển thị dữ liệu”

Silverlight 2 Tutorial – Xây dựng giao diện dùng Style

WPF và Silverlight hỗ trợ một cơ chế cho phép lưu giá trị thuộc tính của các control theo cách có thể dùng lại. Chúng ta có thể lưu giữ những khai báo đó trong các file riêng biệt, và dùng lại nó cho nhiều control và trang khác nhau trong ứng dụng, hoạc thậm chí có thể dùng nó trong những ứng dụng khác nhau. Khái niệm này tương tự như CSS khi bạn làm việc với HTML để thực hiện các phép tùy biến cơ bản. Continue reading “Silverlight 2 Tutorial – Xây dựng giao diện dùng Style”

Silverlight 2 Tutorial – Kết nối mạng để lấy dữ liệu vào một DataGrid.

Đây là phần ba của loạt 8 bài hướng dẫn cách xây dựng một chương trình Digg đơn giản sử dụng bản Beta1 của Silverlight 2. Các bài hướng dẫn này nên được đọc theo thứ tự, và giúp giải thích một số khái niệm nền tảng của Silverlight. Continue reading “Silverlight 2 Tutorial – Kết nối mạng để lấy dữ liệu vào một DataGrid.”