8 changed files with 142 additions and 29 deletions
@ -0,0 +1,25 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Globalization; |
|||
using System.Text; |
|||
|
|||
namespace SunlightAggregationTerminal.Converters |
|||
{ |
|||
public class StringToBoolConverter : IValueConverter |
|||
{ |
|||
public object Convert(object? value, Type targetType, object? parameter, CultureInfo culture) |
|||
{ |
|||
if (value !=null) |
|||
{ |
|||
return true; |
|||
} |
|||
return false; |
|||
} |
|||
|
|||
public object ConvertBack(object? value, Type targetType, object? parameter, CultureInfo culture) |
|||
{ |
|||
// 单向绑定通常不需要实现,除非你需要双向绑定
|
|||
throw new NotImplementedException(); |
|||
} |
|||
} |
|||
} |
|||
@ -1,26 +1,77 @@ |
|||
using Microsoft.Maui.Controls; |
|||
using SunlightAggregationTerminal.Class; |
|||
using SunlightAggregationTerminal.Models; |
|||
using System.Collections.ObjectModel; |
|||
|
|||
namespace SunlightAggregationTerminal; |
|||
|
|||
public partial class InfoPage : ContentPage |
|||
{ |
|||
public ObservableCollection<InfoItem> InfoItems { get; set; } = new(); |
|||
{ |
|||
public static ObservableCollection<InfoItem> InfoItems { get; set; } = new(); |
|||
public static string? _Name, _State, _MachineName, _Machine, _Information, _Model, |
|||
_Type, _ModelA, _ModelB, _ModelC, _ModelD, _ModelE, _ModelF; |
|||
|
|||
public InfoPage() |
|||
{ |
|||
InitializeComponent(); |
|||
InitializeComponent(); |
|||
} |
|||
|
|||
public static void OnInfoPage()//打开时加载信息
|
|||
{ |
|||
MainThread.BeginInvokeOnMainThread(() => |
|||
{ |
|||
InfoItems.Clear(); |
|||
foreach (Dictionary<string, object> List in DataModel.Info_data) |
|||
{ |
|||
if (List.TryGetValue("Name", out var val) && val != null) _Name = val.ToString()!; |
|||
if (List.TryGetValue("State", out val) && val != null) _State = val.ToString()!; |
|||
if (List.TryGetValue("MachineName", out val) && val != null) _MachineName = val.ToString()!; |
|||
if (List.TryGetValue("Machine", out val) && val != null) _Machine = val.ToString()!; |
|||
if (List.TryGetValue("Information", out val) && val != null) _Information = val.ToString()!; |
|||
if (List.TryGetValue("Type", out val) && val != null) _Type = val.ToString()!; |
|||
if (List.TryGetValue("Model", out val) && val != null) _Model = val.ToString()!; |
|||
if (List.TryGetValue("ModelA", out val) && val != null) _ModelA = val.ToString()!; |
|||
if (List.TryGetValue("ModelB", out val) && val != null) _ModelB = val.ToString()!; |
|||
if (List.TryGetValue("ModelC", out val) && val != null) _ModelC = val.ToString()!; |
|||
if (List.TryGetValue("ModelD", out val) && val != null) _ModelD = val.ToString()!; |
|||
if (List.TryGetValue("ModelE", out val) && val != null) _ModelE = val.ToString()!; |
|||
if (List.TryGetValue("ModelF", out val) && val != null) _ModelF = val.ToString()!; |
|||
|
|||
InfoItems.Add(new InfoItem { Name="202",Model= "302", State="tz",Machine="123456",Information="etggsgt\n234423\ngsgsg\nstset" }); |
|||
InfoItems.Add(new InfoItem { Name = "pdw", Model = "252-2T", State = "tz", Machine = "123456", Information = "etggsgt\n234423\ngsgsg\nstset" }); |
|||
InfoItems.Add(new InfoItem { Name = "pdw", Model = "242W", State = "tz", Machine = "123456", Information = "etggsgt\n234423\ngsgsg\nstset" }); |
|||
InfoItems.Add(new InfoItem |
|||
{ |
|||
Name = _Name, |
|||
State = _State, |
|||
MachineName = _MachineName, |
|||
Machine = _Machine, |
|||
Information = _Information, |
|||
Type = _Type, |
|||
Model = _Model, |
|||
ModelA = _ModelA, |
|||
ModelB = _ModelB, |
|||
ModelC = _ModelC, |
|||
ModelD = _ModelD, |
|||
ModelE = _ModelE, |
|||
ModelF = _ModelF |
|||
}); |
|||
|
|||
} |
|||
|
|||
}); |
|||
|
|||
CardCollectionView.ItemsSource = InfoItems; |
|||
} |
|||
|
|||
private void CardCollectionView_RemainingItemsThresholdReached(object sender, EventArgs e) |
|||
private void TapGestureRecognizer_Tapped(object sender, TappedEventArgs e) |
|||
{ |
|||
// 将 sender 强制转换为 BindingContext 定义在 BindableObject
|
|||
if (sender is Microsoft.Maui.Controls.BindableObject bindable) |
|||
{ |
|||
var context = bindable.BindingContext; |
|||
|
|||
if (context is InfoItem item) |
|||
{ |
|||
DisplayAlert("提示", $"你点击了工单: {item.MachineName}", "确定"); |
|||
|
|||
} |
|||
} |
|||
} |
|||
} |
|||
Loading…
Reference in new issue