DatagramSocketMessageReceivedEventArgs 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
为 DatagramSocket 上的 MessageReceived 事件提供数据。
public ref class DatagramSocketMessageReceivedEventArgs sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.GCPressure]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class DatagramSocketMessageReceivedEventArgs final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.GCPressure]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class DatagramSocketMessageReceivedEventArgs
Public NotInheritable Class DatagramSocketMessageReceivedEventArgs
- 继承
- 属性
Windows 要求
| 要求 | 说明 |
|---|---|
| 设备系列 |
Windows 10 (在 10.0.10240.0 中引入)
|
| API contract |
Windows.Foundation.UniversalApiContract (在 v1.0 中引入)
|
注解
DatagramSocketMessageReceivedEventArgs 用于接收 DatagramSocket 对象上的数据。
如果 DatagramSocket 实例想要侦听和接收数据,则 DatagramSocket.BindServiceNameAsync 或 DatagramSocket.BindEndpointAsync 方法用于将 DatagramSocket 绑定到本地服务名称或 UDP 端口。 如果 DatagramSocket 仅用于发送数据,则不需要这些方法。
在收到消息时绑定到本地服务名称或 UDP 端口的 DatagramSocket 上发生 DatagramSocket.MessageReceived 事件。 DatagramSocketMessageReceivedEventArgs 实例是在 发生 DatagramSocket.MessageReceived 事件时创建的。
收到消息时,有两个主要方法可以读取数据:
- GetDataStream 方法返回一个 Streams.IInputStream 对象,该对象表示接收的消息中的字节顺序流。 然后,应用必须分析收到的字节流。
- GetDataReader 方法返回一个 Streams.DataReader 对象来读取传入的数据。 Streams.DataReader 对象具有以各种格式读取数据的单独方法,包括字节、有符号和无符号整数、布尔值、单浮点数、字符串、日期时间和时间跨度值、GUID 和缓冲区。 这些方法可以直接用于分析收到的消息。
属性
| 名称 | 说明 |
|---|---|
| LocalAddress |
获取在收到消息时与 DatagramSocket 关联的本地 IP 地址。 |
| RemoteAddress |
获取收到消息时 DatagramSocket 上数据报 的远程发送方的 IP 地址。 |
| RemotePort |
获取 DatagramSocket 上收到的数据报的远程发送方的 UDP 端口号。 |
方法
| 名称 | 说明 |
|---|---|
| GetDataReader() |
获取 一个 DataReader 对象,用于读取从 DatagramSocket 对象上的远程网络目标接收的传入数据。 |
| GetDataStream() |
获取一个 IInputStream 对象,该对象表示要作为 来自 DatagramSocket 对象的远程网络目标的消息读取的字节顺序流。 |