[Silverlight][VB]取得/設定剪貼簿(Clipboard)

  • 2305
  • 0

[Silverlight][VB]取得/設定剪貼簿(Clipboard)


Imports System.Windows.Browser

Public Class SLClipboard
    Private Shared data As String = ""
    Public Shared Function GetText() As String
        Dim clipboarddata As ScriptObject = HtmlPage.Window.GetProperty("clipboardData")

        If IsNothing(clipboarddata) Then
            MessageBox.Show("Sorry, this functionality is only avaliable in Internet Explorer.")
        Else
            data = clipboarddata.Invoke("getData", "text")
        End If
        Return data
    End Function

    Public Shared Sub SetText(ByVal txt As String)
        data = txt
        Dim clipboarddata As ScriptObject = HtmlPage.Window.GetProperty("clipboardData")
        If IsNothing(clipboarddata) Then
            MessageBox.Show("Sorry, this functionality is only avaliable in Internet Explorer.")
        Else
            clipboarddata.Invoke("setData", "text", data)
        End If
    End Sub

End Class

主要就是利用瀏覽器中script來處理,所以呢~如果瀏覽器安全性設太高,或是不支援的話就有問題囉~

進階使用:在Excel與Datagrid作複製貼上動作 (別人寫得比較厲害)