警告 CS0618:“PickerRenderer.PickerRenderer()”已过时:“此构造函数自 2.5 版起已过时。请改用 PickerRenderer(Context)。
此警告不仅在选择器渲染器中,所有渲染器(Entry、DatePicker、StackLayout Renderer)都显示此警告。我的 Picker 自定义渲染器是这样的,
public class BorderlessPickerRenderer : PickerRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<Picker> e)
{
base.OnElementChanged(e);
var picker = e.NewElement;
if (Control != null)
{
Control.Background = null;
Control.SetTextSize(Android.Util.ComplexUnitType.Pt, 8);
Control.SetTextColor(Android.Graphics.Color.ParseColor("#141414"));
}
}
}
Run Code Online (Sandbox Code Playgroud) 我rg.plugins.popup在我的应用程序中使用过。我已经更新了 xamarin 表单(version="2.5.0.121934")。现在单击外部背景并没有关闭。我曾经通过多种方式关闭弹出窗口,但没有关闭,我尝试了以下代码:
this.CloseWhenBackgroundIsClicked = false;
protected override bool OnBackgroundClicked()
{
Navigation.PopPopupAsync();
return false;
}
Run Code Online (Sandbox Code Playgroud)
OnBackgroundClicked不是在打电话。如何解决这个问题?
我有两个集合,一些条件是使用linq查询完成的.比较两个列表并从中获取结果.我使用了foreach循环和linq查询,这些集合有65000个数据,我的问题是它需要更多的时间来处理.我的代码如下所述.如何提高性能以及如何缩短处理时间.如果有任何提高性能的想法请分享.
foreach (var part in quoteParts)
{
var presentPart = existingPart.FirstOrDefault(p => p.PartName == part.PartNumber);
if (presentPart != null)
{
int partID = presentPart.ID;
string partNumber = Convert.ToString(presentPart.PartName);
foreach (var quotesPart in quoteStepInProcesses)
{
var presentStepInProcess = existingStepInProcesses.FirstOrDefault(p => p.ProcessId == quotesPart.StepInProcessID && quotesPart.PartNumber == partNumber);
if (presentStepInProcess != null)
{
PartProcesses.Add(new PartProcessDto
{
ProcessName = Convert.ToString(presentStepInProcess.ID),
PartName = Convert.ToString(presentPart.ID)
});
}
}
}
}
Run Code Online (Sandbox Code Playgroud)