<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[FireGhost57的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/FireGhost57</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; FireGhost57]]></copyright><item><title><![CDATA[设置图标文件为系统文件并且隐藏]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/129209427</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/129209427</guid><author>FireGhost57</author><pubDate>Fri, 24 Feb 2023 22:03:32 +0800</pubDate><description><![CDATA[将做好的logo.ico图标拷贝到文件夹中,然后把图标文件拖拽到[设置系统文件.bat]文件上即可运行,再同样方法创建[desktop.ini]文件并拖拽到批处理上即可。设置系统文件.bat。]]></description><category></category></item><item><title><![CDATA[EntityFrameworkCore的DbContext中可以任意返回DbSet的解决办法]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/126660074</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/126660074</guid><author>FireGhost57</author><pubDate>Fri, 02 Sep 2022 12:23:27 +0800</pubDate><description><![CDATA[DbContext中有个Set()方法是可以根据你传入的类型自动匹配到你要操作的数据集的,但是这个函数有个弊端就是你还是要先告诉它这是个什么数据集类型.但是你可以用函数封装一下,让函数传入一个实体对象,直接匹配函数的对象类型再返回Set即可,写法如下。但是这么写就有个问题,如果我设置了很多数据集(表),那我增删改查逻辑我就要针对每一个表格写一遍,浪费工作量也不方便,那有没有办法根据对象自动识别匹配要操作的数据集呢.例如如上情况,我们在处理数据集时要这么写。这样就可以正常操作数据集了。]]></description><category></category></item><item><title><![CDATA[netcore3.1连接MySQL时报错: Method ‘Create‘ in type ... does not have an implementation的解决办法]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/125043697</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/125043697</guid><author>FireGhost57</author><pubDate>Mon, 30 May 2022 11:39:30 +0800</pubDate><description><![CDATA[web运行mysql逻辑时报错问题的解决办法]]></description><category></category></item><item><title><![CDATA[腾讯COS存储桶直传后端服务类]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/125017546</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/125017546</guid><author>FireGhost57</author><pubDate>Sat, 28 May 2022 13:54:13 +0800</pubDate><description><![CDATA[using Newtonsoft.Json.Linq;
using System;
using System.Globalization;
using System.Security.Cryptography;
using System.Text;

namespace SDK.TencentCos
{
    public static class CosUtilHelper
    {
        /// &lt;summary&gt;
        /// 生成要上传的 COS 文件路径文件名.]]></description><category></category></item><item><title><![CDATA[毫秒型长整型转为timespan]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/107696418</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/107696418</guid><author>FireGhost57</author><pubDate>Thu, 30 Jul 2020 18:23:36 +0800</pubDate><description><![CDATA[需求要把一个长整形毫秒转为TimeSpan,所以需要进行时分换算



计算方法如下:


        public static TimeSpan GetTimeSpan(long ms)
        {
            var milliseconds = Convert.ToInt32(ms % 1000);
            var seconds = Convert.ToInt32(ms / 1000 % 60);
            var minutes = Conv]]></description><category></category></item><item><title><![CDATA[WrapPanel水平布局保持不换行的写法示例]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/107532367</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/107532367</guid><author>FireGhost57</author><pubDate>Thu, 23 Jul 2020 11:24:26 +0800</pubDate><description><![CDATA[UI需求



宽高: 235px*285px

内容宽度: 191px

要求: 每行2个,右边距15,下边距10

代码写法:



测量后发现两个item+margin=191,所以让wrappanel定宽191

item中grid套个border,在border中设置左右间距7.5,这样两个元素加起来的宽就是15,由于左边距多了7.5,所以在上一层grid左缩进7.5拉回来就可以了

效果:




...]]></description><category></category></item><item><title><![CDATA[获得ListBox自身的滚动条]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/107223791</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/107223791</guid><author>FireGhost57</author><pubDate>Thu, 09 Jul 2020 11:03:25 +0800</pubDate><description><![CDATA[var scroller = (ScrollViewer)ListBox.GetPrivateProperty("ScrollHost").GetValue(ListBox);

直接这样就可以拿到ListBox内部默认的滚动条了
]]></description><category></category></item><item><title><![CDATA[文件转base64]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/105508189</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/105508189</guid><author>FireGhost57</author><pubDate>Tue, 14 Apr 2020 11:26:41 +0800</pubDate><description><![CDATA[public static string ToBase64(string path)
    {
        using (var filestream = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
        {
            var bt = new byte...]]></description><category></category></item><item><title><![CDATA[C#获得屏幕Dpi缩放，Win10缩放设置-【控制面板-设置-显示-更改文本、应用等项目的大小】]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/104964655</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/104964655</guid><author>FireGhost57</author><pubDate>Thu, 19 Mar 2020 12:20:40 +0800</pubDate><description><![CDATA[using System;
using System.Runtime.InteropServices;
using System.Windows;

public static class PrimaryScreen
{
    #region Win32 API
    [DllImport("user32.dll")]
    static extern IntPtr GetDC(IntPt...]]></description><category></category></item><item><title><![CDATA[WPF滚动条滚动到中央位置]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/104498078</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/104498078</guid><author>FireGhost57</author><pubDate>Tue, 25 Feb 2020 15:17:13 +0800</pubDate><description><![CDATA[/// &lt;summary&gt;
    /// 水平滚动到中央
    /// &lt;/summary&gt;
    /// &lt;param name="scroll"&gt;&lt;/param&gt;
    public static void ScrollToHorizontalCenter(ScrollViewer scroll)
    {
        v...]]></description><category></category></item><item><title><![CDATA[[WPF]窗口失去焦点的处理方法]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/104482748</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/104482748</guid><author>FireGhost57</author><pubDate>Mon, 24 Feb 2020 18:41:43 +0800</pubDate><description><![CDATA[在wpf中,控件失去焦点可以用LostFocus,然而Window并没有失去焦点这个概念,所以我们需要用非活跃事件Deactivated来认为窗口失去了焦点

例如,写一个窗口失去焦点时关闭这个窗口的事件:




...]]></description><category></category></item><item><title><![CDATA[WPF窗口防止系统关闭按钮关闭窗体的办法]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/104288761</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/104288761</guid><author>FireGhost57</author><pubDate>Wed, 12 Feb 2020 23:07:41 +0800</pubDate><description><![CDATA[在windows窗体内重写事件OnClosing


        protected override void OnClosing(CancelEventArgs e)
        {
            e.Cancel = true;
            Hide();
        }



]]></description><category></category></item><item><title><![CDATA[WPF计算坐标帮助类]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/104064344</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/104064344</guid><author>FireGhost57</author><pubDate>Tue, 21 Jan 2020 17:48:23 +0800</pubDate><description><![CDATA[public static class PointHelper
{
    static FrameworkElement MainWindow =&gt; Application.Current.MainWindow;

    /// &lt;summary&gt;
    /// 把屏幕中的一个点的坐标转换成该窗体Window中的坐标
    /// &lt;/summary&gt;
  ...]]></description><category></category></item><item><title><![CDATA[获得枚举Display特性的Name]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/104040006</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/104040006</guid><author>FireGhost57</author><pubDate>Sun, 19 Jan 2020 14:12:50 +0800</pubDate><description><![CDATA[public static string GetDisplayName(T obj)
        {
            var type = typeof(T);
            var name = Enum.GetName(type, obj);
            var field = type.GetField(name);
           ...]]></description><category></category></item><item><title><![CDATA[WPF窗体设置最大化时禁用更改大小,恢复后允许更改窗口尺寸]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/104015960</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/104015960</guid><author>FireGhost57</author><pubDate>Fri, 17 Jan 2020 11:01:50 +0800</pubDate><description><![CDATA[public class WindowBase : Window
    {
        public WindowBase()
        {
        }

        protected override void OnStateChanged(EventArgs e)
        {
            ResizeMode = WindowState ...]]></description><category></category></item><item><title><![CDATA[wpf列项中如何显示内容的解释,如ListBoxItem,ComboBoxItem]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/103994317</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/103994317</guid><author>FireGhost57</author><pubDate>Wed, 15 Jan 2020 18:34:56 +0800</pubDate><description><![CDATA[在列项样式设置中(例如ListBoxItem),是如何显示子项内容呢,答案在这里



IsItemsHost是设置此panel是否是列项宿主,属性解释如下:


]]></description><category></category></item><item><title><![CDATA[WPF自定义tooltip样式]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/103714602</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/103714602</guid><author>FireGhost57</author><pubDate>Thu, 26 Dec 2019 14:14:47 +0800</pubDate><description><![CDATA[tooltip其实和popup很像,但是popup弹出后需要监听鼠标点击事件,所以触感不流畅,弹出后不会自己消失

而tooltip在鼠标滑过时会显示,移开后会隐藏

tooltip因为可以接受类对象,所以可以传任意内容给样式模板

代码:


    &lt;!-- =============== 提示文本样式 =============== --&gt;
    &lt;Style x:Key...]]></description><category></category></item><item><title><![CDATA[app接入支付宝api,支付宝付款踩坑记录]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/103690000</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/103690000</guid><author>FireGhost57</author><pubDate>Tue, 24 Dec 2019 21:25:48 +0800</pubDate><description><![CDATA[服务器端用的netcore,需要安装一个nuget包:



然后就是重点:

第一步: 需要声明一个客户端对象来生成订单信息


        static DefaultAopClient _alipayClient;
        public static DefaultAopClient AlipayClient
        {
            get
         ...]]></description><category></category></item><item><title><![CDATA[uni-app微信支付踩得坑总结,以及orderInfo格式]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/103641153</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/103641153</guid><author>FireGhost57</author><pubDate>Sat, 21 Dec 2019 09:33:25 +0800</pubDate><description><![CDATA[官方没有给出orderInfo的格式,所以不得不在官方示例hello_uni_app中截取(用HBuilderX新建示例工程)

微信支付订单:


{
	"data": {
		"appid": "wx0411fa6a39d61297",
		"noncestr": "jUsIgpt9H8meyYP1",
		"package": "Sign=WXPay",
		"partnerid": "12...]]></description><category></category></item><item><title><![CDATA[wpf的页面XAML设置静态参数的办法]]></title><link>https://blog.youkuaiyun.com/FireGhost57/article/details/103478409</link><guid>https://blog.youkuaiyun.com/FireGhost57/article/details/103478409</guid><author>FireGhost57</author><pubDate>Tue, 10 Dec 2019 16:43:39 +0800</pubDate><description><![CDATA[先配置一个静态参数



然后在页面上这样用


]]></description><category></category></item></channel></rss>