リスト型クラスを普通のクラスに

タグの編集
投稿者 kojiro  (社会人) 投稿日時 2024/5/4 14:46:21

namespace MauiTouch2;

public class class1
{
    public PointF? pos { get; set; }
}

public partial class MainPage : ContentPage
{
    private class1? test = null;

    public MainPage()
    {
        InitializeComponent();
    }

    private async void OnStartInteraction(object sender, TouchEventArgs evt)
    {
        PointF firstPoint = evt.Touches.FirstOrDefault();
        string msg = $"Touch/click at {firstPoint}";
        Text.Text = msg;
        await this.drawable.OnTouchAsync(this.graph, firstPoint, CancellationToken.None);
    }
}

public class HitItem
{
    public PointF pos { get; set; }
    public float radius { get; set; }
}

public class GraphicsDrawable : IDrawable
{
    public List<HitItem> HitItems { get; } = new List<HitItem>();     //<= ここ
    public async Task OnTouchAsync(IGraphicsView view, PointF point, CancellationToken token)
    {
        HitItem c = new HitItem();
        c.pos = point;
        c.radius = 0;

        lock (this.HitItems)
        {
            this.HitItems.Add(c);
        }

 
投稿者 KOZ  (社会人) 投稿日時 2024/5/5 00:13:25
using HitItemCollection = System.Collections.Generic.List<MauiTouch2.HitItem>;
(略)
 public HitItemCollection HitItems { get; } = new HitItemCollection();     //<= ここ
(略)
投稿者 KOZ  (社会人) 投稿日時 2024/5/5 00:29:19
普通はこう書くんじゃないですかね。


public class HitItem
{
    public PointF pos { get; set; }
    public float radius { get; set; }
}

public class HitItemCollection : List<HitItem> { }

投稿者 kojiro  (社会人) 投稿日時 2024/5/5 12:00:43
public class HitItemCollection : List<HitItem> { }
ですが、Listを取りたいのですが、、
投稿者 KOZ  (社会人) 投稿日時 2024/5/5 14:47:13
HitItemCollection というクラスを作り、以降、それを使うということなんですが・・・
当てはまらない場合は、「List を除く」という意味についてもうすこし詳しく書いてください。
投稿者 kojiro  (社会人) 投稿日時 2024/5/6 09:22:02
自分の質問が、自分自身不明瞭になってきましたので、解決ということで、質問を終わらせていただきます。
大変、ありがとうございました。