Silverlight içerisindeki verileri bilgisayarımıza kaydetmek için save dialog araçlarını kullanabiliriz.
Şimdi bir silverlight projesi içerisine bir textbox ve kaydetmek için bir button ekleyelim ve buton'a tıkladıktan sonra istediğimiz yere textbox içerisindeki yazıyı metin dosyası olarak kaydedelim.
Bu uygulamanın
XAML kodu
<Button x:Name="button_kaydet" Margin="0,71,77,0" Content="Kaydet"
Width="90" Click="button_kaydet_Click" Height="25"/>
<TextBox x:Name="textbox_girilen" Height="30" Margin="79,37,77,0"
VerticalAlignment="Top" Text="Metin giriniz" TextWrapping="Wrap"/>
C# kodu da aşağıdaki gibi olacaktır.
private void button_kaydet_Click(object sender, System.Windows.RoutedEventArgs e)
{
SaveFileDialog dosyakaydetme = new SaveFileDialog();
dosyakaydetme.Filter = "Metin Belgeleri (.txt)|*.txt|Tüm Dosyalar|*.*";
dosyakaydetme.FilterIndex = 1;
bool? ret = dosyakaydetme.ShowDialog();
if (ret == true)
{
using (Stream fs = (Stream)dosyakaydetme.OpenFile())
{
byte[] metin = (new UTF8Encoding(true)).GetBytes(textbox_girilen.Text);
fs.Write(metin, 0, metin.Length);
fs.Close();
}
}
}
Yalnız bu işlemi yaparken "System.IO" ve "System.Text" namespace'lerinin projede tanımlı olması gerekli.
Görüldüğü gibi Silverlight içerisinde metni bir metin dosyasının içerisine kaydettik. Bunun gibi silverlight içerisindeki tüm bileşenleri de bilgisayarımıza kaydedebiliriz.
Kolay gelsin.