将对象转换为字符串 c# xamarin forms

Convert object to a string c# xamarin forms

我想将标签值(对象)转换为字符串变量,但得到的是空字符串。

这是代码。

var label = new Label
            {

            };
            label.SetBinding(Label.TextProperty, "Link");
            string url = label.GetValue(Label.TextProperty).toString();

我想把标签的内容当成字符串使用

如果我不将它转换为标签中的 url 就可以了,但是当我转换它时,我得到一个空字符串作为结果。有什么帮助吗?如何将其转换为字符串?

提前致谢。

您可以隐式设置 Label 文本,但我感觉这不是您想要做的。

如果您想从 ViewModel 绑定到 Link 属性,您可能只是忘记为 Label.[=15= 设置 BindingContext ]

        var label = new Label
        {
            Text = "Set implicitely"
        };

        string url = label.GetValue(Label.TextProperty).ToString(); // Set implicitely

        MyViewModel viewModel = new MyViewModel
        {
            Link = "Set through binding"
        };

        label.BindingContext = viewModel;
        label.SetBinding(Label.TextProperty, "Link");

        string url2 = label.GetValue(Label.TextProperty).ToString(); // Set through binding

好吧,我找到了一个非常简单的解决方案,@hichame.yessou 已经在第一条评论中提到过。

我通过 XAML

将数据传递到标签中
<Label Text="{Binding Link}" x:Name="linkLabel" IsVisible="False" />

但是我放了 "x:name" 属性 是为了处理来自 xaml.cs 文件的标签。

那么一切都很简单..

string url = linkLabel.Text;