A XAML browser application (XBAP) running in partial trust can safely upload files from a client machine. : Page « Windows Presentation Foundation « VB.Net Tutorial

Home
VB.Net Tutorial
1.Language Basics
2.Data Type
3.Operator
4.Statements
5.Date Time
6.Class Module
7.Development
8.Collections
9.Generics
10.Attributes
11.Event
12.LINQ
13.Stream File
14.GUI
15.GUI Applications
16.Windows Presentation Foundation
17.2D Graphics
18.I18N Internationlization
19.Reflection
20.Regular Expressions
21.Security
22.Socket Network
23.Thread
24.Windows
25.XML
26.Database ADO.net
27.Design Patterns
VB.Net
VB.Net by API
VB.Net Tutorial » Windows Presentation Foundation » Page 
16.56.9.A XAML browser application (XBAP) running in partial trust can safely upload files from a client machine.
<Page x:Class="SafeFileUploadPartialTrustSample.HomePage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="HomePage"
  xmlns:dialogs="clr-namespace:Microsoft.Win32;assembly=PresentationFramework">
    <StackPanel>
    <Button Name="uploadButton" Click="uploadButton_Click" Width="100">Upload Image...</Button>
    <Image Name="viewImage" Width="500" Height="300"></Image>
    <Label Name="nameLabel"></Label>
    
    </StackPanel>
</Page>
//File:Window.xaml.vb
Imports System
Imports System.IO
Imports System.Windows
Imports System.Windows.Controls
Imports System.Windows.Media
Imports System.Windows.Media.Imaging
Imports System.Windows.Navigation
Imports Microsoft.Win32

Namespace SafeFileUploadPartialTrustSample
  Public Partial Class HomePage
    Inherits Page
    Implements IProvideCustomContentState
    Public Sub New()
      InitializeComponent()
    End Sub

    Private Sub uploadButton_Click(sender As Object, e As RoutedEventArgs)
      Dim dlg As New OpenFileDialog()
      dlg.Filter = "Image Files(*.BMP;*.JPG;*.GIF)|*.BMP;*.JPG;*.GIF|All files (*.*)|*.*"

      If dlg.ShowDialog() = True Then
        If Me.viewImage.Source IsNot Nothing Then
          Dim iccs As New ImageCustomContentState(Me.viewImage.Source, DirectCast(Me.nameLabel.Content, String))
          Me.NavigationService.AddBackEntry(iccs)
        End If
        Using stream As Stream = dlg.OpenFile()
          Dim bitmapDecoder__1 As BitmapDecoder = BitmapDecoder.Create(stream, BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.OnLoad)
          Me.viewImage.Source = bitmapDecoder__1.Frames(0)
          Me.nameLabel.Content = dlg.SafeFileName
        End Using
      End If
    End Sub
    Public Function GetContentState() As CustomContentState Implements IProvideCustomContentState.GetContentState
      Return New ImageCustomContentState(Me.viewImage.Source, DirectCast(Me.nameLabel.Content, String))
    End Function
  End Class
  <Serializable> _
  Public Class ImageCustomContentState
    Inherits CustomContentState

    Private imageSource As ImageSource
    Private filename As String

    Public Sub New(imageSource As ImageSource, filename As String)
      Me.imageSource = imageSource
      Me.filename = filename
    End Sub

    Public Overrides ReadOnly Property JournalEntryName() As String
      Get
        Return Me.filename
      End Get
    End Property

    Public Overrides Sub Replay(navigationService As NavigationService, mode As NavigationMode)
      Dim homePage As HomePage = DirectCast(navigationService.Content, HomePage)
      homePage.viewImage.Source = Me.imageSource
      homePage.nameLabel.Content = Me.filename
    End Sub
  End Class
End Namespace
WPF A X A M L Browser Application X B A P Running In Partial Trust Can Safely Upload Files From A Client Machine
16.56.Page
16.56.1.Automatic InlineUIContainer generation: text along with ButtonAutomatic InlineUIContainer generation: text along with Button
16.56.2.Path Reference Page SnipPath Reference Page Snip
16.56.3.Create a button when the page loads.Create a button when the page loads.
16.56.4.Page Loaded eventPage Loaded event
16.56.5.Remember and navigate through multiple sets of state for a single page instanceRemember and navigate through multiple sets of state for a single page instance
16.56.6.Navigate to an instance of a custom class, instead of a Page.Navigate to an instance of a custom class, instead of a Page.
16.56.7.Select Product Page FunctionSelect Product Page Function
16.56.8.UI With Page for Dynamic Button contentUI With Page for Dynamic Button content
16.56.9.A XAML browser application (XBAP) running in partial trust can safely upload files from a client machine.A XAML browser application (XBAP) running in partial trust can safely upload files from a client machine.
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.