大佬教程收集整理的这篇文章主要介绍了绑定在 Listview Xamarin MVVM 中不起作用,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个似乎没有人能够弄清楚的神秘问题。我正在使用 Xamarin 和类库构建一个应用程序,使用 MVVM 模式。
当我尝试绑定标签时,我有一个连接到列表的列表视图,但不会连接到属性。我已经尝试了一切,一点一点地删除了所有的代码,看看是否改变了一些东西,但没有任何效果。 我已经解决这个问题好几天了,如果有人能帮助我,我将非常感激。
我已经检查过并且列表成功进入用户界面,我怀疑错误出在 xaml 代码中,但如果可能是其他代码,我会发布大部分代码。
页面:
<StackLayout>
<!-- Searchbar -->
<StackLayout>
<Searchbar
Textcolor="black"
FontSize="24"
Placeholdercolor="Black"
Placeholder="Sök Lista..."
margin="0,5,30,10"
SearchCommand="{Binding PerformSearch}"/>
</StackLayout>
<!-- ListvIEw of inventory Lists -->
<ListVIEw BACkgroundcolor="#7EA0B7"
Separatorcolor="#7EA0B7"
x:name="ListVIEw"
Itemssource="{Binding listofLists}"
HasUnevenRows="True"
SELEctionMode="None">
<ListVIEw.ItemTemplate>
<DataTemplate>
<VIEwCell>
<GrID padding="5">
<Frame CornerRadius="10" BACkgroundcolor="white">
<StackLayout>
<Label
Textcolor="Black"
FontFamily="PTC55F.ttf#ptc55f"
VerticalOptions="Center"
Text="{Binding ListnamE}" <----- can't deBUG cause it can't find it
FontSize="Large"/>
<Label
FontFamily="PTC55F.ttf#ptc55f"
margin="0,5"
Text="{Binding DateSent}"<----- can't deBUG cause it can't find it FontSize="Medium"/>
<Label
FontFamily="PTC55F.ttf#ptc55f"
margin="0,5"
Text="{Binding DatE}" <----- can't deBUG cause it can't find it
FontSize="Medium"/>
</StackLayout>
</Frame>
</GrID>
</VIEwCell>
</DataTemplate>
</ListVIEw.ItemTemplate>
</ListVIEw>
<!-- Create new List button -->
<StackLayout>
<button Text="+ Skapa ny Lista"
margin="8"
Heightrequest="60"
FontSize="24"
FontFamily="PTC55F.ttf#ptc55f"
BACkgroundcolor="#AAC0AA"
Textcolor="black"
bordercolor="Black"
borderWIDth="2"
Command="{Binding NavigateCreateListCommanD}"/>
</StackLayout>
</StackLayout>
</ContentPage>
xaml.cs
public partial class InventoryStartPage : ContentPage
{
public InventoryStartPage()
{
InitializeComponent();
BindingContext = new InventoryStartviewmodel(new ListManager(new mockListRepo());
}
虚拟机
public ObservableCollection<ListModel> listofLists { get; set; }
private ListManager _manager;
public InventoryStartviewmodel(ListManager manager,Navigationservices navigationservicE)
{
_manager = manager;
listofLists = _manager.GetLists();
}
经理
public class ListManager
{
public ObservableCollection<ListModel> ListList = new ObservableCollection<ListModel>();
private Readonly ImockListRepo _mockRepo;
public ListManager(ImockListRepo mockRepo)
{
_mockRepo = mockRepo;
}
public ObservableCollection<ListModel> GetLists()
{
foreach (var List in _mockRepo.GetAllLists())
{
ListList.Add(List);
}
return ListList;
}
}
终于!由于这个绑定问题,我把头发扯了几个小时。朋友们的解决方案来了!
<ListView
BACkgroundColor="White"
Itemssource="{Binding ListOfArticles}"
HasUnevenRows="True"
SELEctionMode="None">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<StackLayout Padding="10"
x:DataType="model:ArticleRegistrationModel"> <--------THISSSS
<Label Text="{Binding ArticlEID}"
FontSize="16" />
<Label Text="{Binding Articlename}"
LineBreakmode="NoWrap"
FontSize="13" />
<Label Text="{Binding }"
LineBreakmode="NoWrap"
FontSize="13" />
</StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
将 x:DataType="model:ArticleRegistrationModel" 添加到围绕标签的 Stacklayout 最终修复了它。起初只出现了两个道具,但在构建之后它们都在那里。
希望这也能解决其他人的问题。
以上是大佬教程为你收集整理的绑定在 Listview Xamarin MVVM 中不起作用全部内容,希望文章能够帮你解决绑定在 Listview Xamarin MVVM 中不起作用所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。