OpenWriteCompletedEventArgs 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供 OpenWriteCompleted 事件的資料。
public ref class OpenWriteCompletedEventArgs : System::ComponentModel::AsyncCompletedEventArgs
public class OpenWriteCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
type OpenWriteCompletedEventArgs = class
inherit AsyncCompletedEventArgs
Public Class OpenWriteCompletedEventArgs
Inherits AsyncCompletedEventArgs
- 繼承
範例
下列程式代碼範例示範如何開啟數據流以寫入要上傳的數據。
void OpenResourceForPosting( String^ address )
{
WebClient^ client = gcnew WebClient;
Uri ^uri = gcnew Uri(address);
// Specify that the OpenWriteCallback method gets called
// when the writeable stream is available.
client->OpenWriteCompleted += gcnew OpenWriteCompletedEventHandler( OpenWriteCallback2 );
client->OpenWriteAsync( uri );
// Applications can perform other tasks
// while waiting for the upload to complete.
}
public static void OpenResourceForPosting(string address)
{
WebClient client = new WebClient();
Uri uri = new Uri(address);
// Specify that the OpenWriteCallback method gets called
// when the writeable stream is available.
client.OpenWriteCompleted += new OpenWriteCompletedEventHandler(OpenWriteCallback2);
client.OpenWriteAsync(uri);
// Applications can perform other tasks
// while waiting for the upload to complete.
}
Public Shared Sub OpenResourceForPosting(ByVal address As String)
Dim client As WebClient = New WebClient()
' Specify that the OpenWriteCallback method gets called
' when the writeable stream is available.
AddHandler client.OpenWriteCompleted, AddressOf OpenWriteCallback2
Dim uri as Uri = New Uri(address)
client.OpenWriteAsync(uri)
' Applications can perform other tasks
' while waiting for the upload to complete.
End Sub
當數據流可供使用時,會呼叫下列方法。
void OpenWriteCallback2( Object^ /*sender*/, OpenWriteCompletedEventArgs^ e )
{
Stream^ body = nullptr;
StreamWriter^ s = nullptr;
try
{
body = dynamic_cast<Stream^>(e->Result);
s = gcnew StreamWriter( body );
s->AutoFlush = true;
s->Write( "This is content data to be sent to the server." );
}
finally
{
if ( s != nullptr )
{
s->Close();
}
if ( body != nullptr )
{
body->Close();
}
}
}
private static void OpenWriteCallback2(Object sender, OpenWriteCompletedEventArgs e)
{
Stream body = null;
StreamWriter s = null;
try
{
body = (Stream)e.Result;
s = new StreamWriter(body);
s.AutoFlush = true;
s.Write("This is content data to be sent to the server.");
}
finally
{
if (s != null)
{
s.Close();
}
if (body != null)
{
body.Close();
}
}
}
Private Shared Sub OpenWriteCallback2(ByVal sender As Object, ByVal e As OpenWriteCompletedEventArgs)
Dim body As Stream = Nothing
Dim s As StreamWriter = Nothing
Try
body = CType(e.Result, Stream)
s = New StreamWriter(body)
s.AutoFlush = True
s.Write("This is content data to be sent to the server.")
Finally
If Not s Is Nothing Then
s.Close()
End If
If Not body Is Nothing Then
body.Close()
End If
End Try
End Sub
備註
這個類別的實例會傳遞至 OpenWriteCompletedEventHandler 方法。
屬性
Cancelled |
取得值,指出非同步作業是否已取消。 (繼承來源 AsyncCompletedEventArgs) |
Error |
取得值,指出非同步作業期間是否發生錯誤。 (繼承來源 AsyncCompletedEventArgs) |
Result |
取得可寫入的資料流,用來傳送資料至伺服器。 |
UserState |
取得非同步工作的唯一識別項。 (繼承來源 AsyncCompletedEventArgs) |
方法
Equals(Object) |
判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
GetHashCode() |
做為預設雜湊函式。 (繼承來源 Object) |
GetType() |
取得目前執行個體的 Type。 (繼承來源 Object) |
MemberwiseClone() |
建立目前 Object 的淺層複製。 (繼承來源 Object) |
RaiseExceptionIfNecessary() |
如果非同步作業失敗,引發使用者提供的例外狀況。 (繼承來源 AsyncCompletedEventArgs) |
ToString() |
傳回代表目前物件的字串。 (繼承來源 Object) |