c++类型转换为保留组件的字符串属性

本文关键字:字符串 属性 组件 保留 类型转换 c++ | 更新日期: 2023-09-27 18:10:55

我正在构建Xamarin。表单应用程序和我使用的猴子。机器人插件。我有一条ObservableCollection<IDevice> devices;线,收集设备扫描的结果。我想在一个跨平台的选择弹出窗口中展示这些内容,如下所述。下面的代码是我目前所处的位置,但是我有类型转换问题。

var action = await DisplayActionSheet ("ActionSheet: Choose Your Device", "Can't see It?", null, this.devices.Select(device => device.Name).ToArray());
                if (action == "Can't see It?"){
                                      //show help prompt
                };
var device = action as IDevice; //pass this as device to the service routines...

我在最后一行得到一个错误,不能将类型'String'转换为' robots . mobile . core . bluetooth . le。是否有一种方法,我可以手动执行转换,只在输出上,同时仍然让DisplayAction输入保持在该格式?

c++类型转换为保留组件的字符串属性

您不能期望将string转换为IDevice的实现,因为String不实现IDevice !我认为你需要做的是根据返回的名称选择正确的设备对象:

var device = this.devices.Single(device => device.Name == action);