» Artikel »

Menampilkan SharePoint List ke WPF

SharePoint - Windows Presentation Foundation


Deskripsi

Windows Presentation Foundation atau lebih dikenal dengan WPF adalah salah satu fitur dari .Net Framework yang didesain untuk mengganti fungsi Graphics Device Interface (GDI).

Artikel kali ini kita akan membahas tentang cara sederhana menampilkan List/Library ke desktop application menggunakan WPF.

Tonton Videonya »

Siapkan sebuah List/Library

Pertama-tama, siapkan library atau buatlah sebuah list di portal/SharePoint site yang akan ditampilkan ke Aplikasi WPF.




Disini saya mencontohkan menampilkan nama-nama file yang ada pada sebuah document library. Saya menggunakan document library standar dengan nama Documents, meski sebetulnya kita bisa menampilkan tidak sekedar dokumen, tapi bisa juga sebuah list, images, halaman-halaman pada SharePoint portal, bahkan kita juga dapat menampilkan seluruh list atau library yang ada pada sebuah portal atau SharePoint site.


Visual Studio

Saya menggunakan Visual Studio Community Edition (free). Penggunaan edisi yang lebih tinggi seperti Visual Studio Professional atau Enterprise Edition sangat disarankan karena Anda akan merasakan pengalaman dan fitur canggih lainnya yang akan meningkatkan produktifitas dan performa aplikasi yang Anda buat. Namun untuk kebutuhan artikel kali ini saya rasa edisi yang saya gunakan sudah cukup.

Buatlah sebuah Project dalam sebuah Visual Studio Solution. Pilih WPF dan disini saya memilih menggunakan bahasa C#.

Letakkan beberapa object (Label dan TextBox) pada halaman MainWindow.xaml. Aturlah tampilan melalui mode design seperti pada gambar di bawah.



Anda juga bisa mengatur tampilan melalui mode XAML sesuai keinginan Anda.


Mengatur tampilan melalui XAML code

Seperti dijelaskan pada point sebelumnya, Anda dapat mengatur tampilan melalui XAML mode. Berikut adalah kode XAML untuk contoh tampilan yang saya buat.

<Window x:Class="SharePointIndonesia.GetLists.MainWindow"
    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:local="clr-namespace:SharePointIndonesia.GetLists"
    mc:Ignorable="d"
    Title="MainWindow" Height="450" Width="600">
    <Grid>
        <TextBox Name="TextBox1" HorizontalAlignment="Left" Height="312" Margin="74,74,0,0" TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="452"/>
        <Label Content="Koleksi dokumen site integrasi :" HorizontalAlignment="Left" Margin="74,39,0,0" VerticalAlignment="Top"/>
    </Grid>
</Window>
           



NuGet package

Sebelum kita menjalankan perintah untuk mengambil data/informasi dari sebuah portal/SharePoint site, maka kita perlu menyiapkan referensi SharePoint yang bisa kita peroleh dari NuGet.

Pada Solution explorer, klik kanan pada project, lalu pilih "Manage NuGet Packages..". Ketikkan "SharePoint", pilih "Microsoft.SharePoint.Client" lalu install package seperti pada gambar di bawah.




Menuliskan kode

Buka file MainWindow.xaml.cs untuk menuliskan kode yang akan mengambil informasi nama-nama file pada dokumen library. Lihat gambar di bawah.



Kode C#

Tuliskan kode berikut.

using System.Windows;
using Microsoft.SharePoint.Client;
using SP = Microsoft.SharePoint.Client;

namespace SharePointIndonesia.GetLists
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
            ClientContext context = new ClientContext("http://wpf.sharepointindonesia.net/");

            SP.List document = context.Web.Lists.GetByTitle("Documents");
            CamlQuery query = CamlQuery.CreateAllItemsQuery(100);
            SP.ListItemCollection items = document.GetItems(query);
            context.Load(items);
            context.ExecuteQuery();
            foreach (SP.ListItem listItem in items)
            {
                //TextBox1.Text = TextBox1.Text + ", " + listItem["Title"];
                TextBox1.Text = TextBox1.Text + " " + listItem["FileLeafRef"] + ". \n";
            }
        }
    }
}
           

Build & Start

Jalankan aplikasinya dengan menekan tombol F5 pada keyboard atau klik tombol Start pada jendela Visual Studio.

Jika tidak ada kesalahan, maka aplikasi akan menampilkan daftar file seperti terlihat pada gambar di bawah.



Happy coding

Selamat mencoba, semoga bermanfaat, sampai jumpa pada artikel berikutnya.