Представления с несколькими коллекциями — отображение .NET MAUI CollectionView в CollectionViewC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Представления с несколькими коллекциями — отображение .NET MAUI CollectionView в CollectionView

Сообщение Anonymous »

Я разрабатываю приложение C# .NET Maui, которое создает приложение для боулинга, которое ведет подсчет очков для команды по боулингу. Требования заключаются в том, что это общее приложение, поддерживающее лиги, в которых есть боулеры, поддерживающие от двух до многих членов команды. Кроме того, количество игр за матч может поддерживать несколько игр в зависимости от правил лиги. Как правило, большинство лиг требуют наличия трех игр для каждого боулера, но есть лиги, которые поддерживают более трех игр. Итог: существует требование поддерживать от двух до многих боулеров с количеством игр от одной до многих.
В настоящее время у меня возникают проблемы с моим кодом, которые я не могу решить. В частности, после отображения боулера — имени, среднего значения, гандикапа я пытаюсь отобразить горизонтальную линию с сыгранными играми, линия усекается, и я получаю только частичное отображение. Ниже мой код. Любая помощь приветствуется.
type here

Изображение

using CollectionView2022.Models;
namespace CollectionView2022
{
public partial class MainViewModel : ObservableObject
{
[ObservableProperty]
int rows;
[ObservableProperty]
int cols;
[ObservableProperty]
ObservableCollection bowlers;
[ObservableProperty]
List scores;
List gameNames = new List { "Rick", "Bob", "Colton", "Jeff" };
public MainViewModel()
{
Rows = 1;
Cols = 1;
Bowlers = new ObservableCollection();
}
[RelayCommand]
private void Generate()
{
int dr = 0;
int dc = 0;
int s = 200;
//Scores = new List();
//if (cols > 1)
//{
// do
// {
// Scores.Add(new Game { game=0});
// dc++;
// } while (dc < cols);

// dc++;
//}
do
{
Bowlers.Add(new Bowler
{
Average = 0,
Name = gameNames[dr],
Handicap = 0

});
Bowlers[dr].Scores = new List();
do
{
Bowlers[dr].Scores.Add((Game)new Game { score = s });
dc++;
s=s+10;
} while (dc < cols);
dc = 0;
dr++;
} while (dr < rows);

}

}
}






















































































using CollectionView2022.Models;
namespace CollectionView2022
{
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
BindingContext=new MainViewModel();
}

private void CollectionView_SelectionChanged(object sender, SelectionChangedEventArgs e)
{

}
}

}


namespace CollectionView2022.Models
{
public class Game
{
public int score { get; set; }
}
}


namespace CollectionView2022.Models
{
public class Bowler
{
public string Name { get; set; }
public int Average { get; set; }
public int Handicap { get; set; }
public List Scores { get; set; }
}
}


global using CommunityToolkit.Mvvm.ComponentModel;
global using CommunityToolkit.Mvvm.Input;
global using System.Collections.ObjectModel;
global using System.ComponentModel;
global using System.Diagnostics;
global using System.Runtime.CompilerServices;
global using System.Text.Json;


Подробнее здесь: https://stackoverflow.com/questions/787 ... lectionvie
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»