C# 清理 IE 地址栏记录

using System;
using System.Globalization;
using System.Runtime.InteropServices;
using System.Windows.Forms;
using Microsoft.Win32;

namespace SpecialFolder
{
    public partial class FormFolder : Form
    {
        #region AnimateWindow
        [DllImport("user32.dll", EntryPoint = "AnimateWindow")]
        private static extern bool AnimateWindow(IntPtr handle, int ms, int flags);
        #endregion
        private ChineseLunisolarCalendar lunarCalendar = new ChineseLunisolarCalendar();

        public FormFolder()
        {
            #region
            InitializeComponent();
            this.Text = Environment.UserName;
            this.StartPosition = FormStartPosition.CenterScreen; // 在桌面居中显示。
            this.AutoSizeMode = AutoSizeMode.GrowAndShrink;     // 禁用手动调整大小。
            this.SizeGripStyle = SizeGripStyle.Hide;           // 隐藏调整大小手柄。
            statusStripInfo.SizingGrip = false;               // 隐藏状态栏调整大小手柄。
            listViewIE.CheckBoxes = true; // 显示复选框。
            listViewIE.GridLines = true; // 显示网格线。
            listViewIE.HotTracking = true; // 超链接外观。
            listViewIE.MultiSelect = false; // 用户仅能选择一项。
            listViewIE.ShowItemToolTips = true; // 显示工具提示。
            listViewIE.HeaderStyle = ColumnHeaderStyle.None; // 隐藏列标题。
            listViewIE.View = View.Details;                 // 详细信息。
            listViewIE.BeginUpdate();
            using (RegistryKey userKey = Registry.CurrentUser.CreateSubKey(@"Software/Microsoft/Internet Explorer/TypedURLs"))
            {
                foreach (string mru in userKey.GetValueNames())
                {
                    if (mru != "MRUList")
                        listViewIE.Items.Add(userKey.GetValue(mru) as string).Tag = mru;
                }
            }
            listViewIE.EndUpdate();
            listViewIE.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent); // 自动调整列宽。
            columnHeaderTemp.Width = Math.Max(columnHeaderTemp.Width, listViewIE.ClientSize.Width);
            #endregion
        }

        #region FormLoad
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);
            AnimateWindow(this.Handle, 1000, 0x60004); // 淡入淡出效果。
        }
        #endregion

        #region FormClosing
        protected override void OnFormClosing(FormClosingEventArgs e)
        {
            base.OnFormClosing(e);
            AnimateWindow(this.Handle, 1000, 0x50008); // 淡入淡出效果。
        }
        #endregion

        #region listViewIE_MouseClick
        private void listViewIE_MouseClick(object sender, MouseEventArgs e)
        {
            ListViewHitTestInfo info = listViewIE.HitTest(e.Location);
            if ((info.Location & ListViewHitTestLocations.Label) != 0)
                System.Diagnostics.Process.Start(info.Item.Text);
        }
        #endregion

        #region CheckedAll
        private void toolButtonAll_Click(object sender, EventArgs e)
        {
            foreach (ListViewItem item in listViewIE.Items)
            {
                item.Checked = true;
            }
        }

        private void toolButtonCancel_Click(object sender, EventArgs e)
        {
            foreach (ListViewItem item in listViewIE.CheckedItems)
            {
                item.Checked = false;
            }
        }
        #endregion

        #region ClearAll
        private void toolButtonClear_Click(object sender, EventArgs e)
        {
            using (RegistryKey userKey = Registry.CurrentUser.CreateSubKey(@"Software/Microsoft/Internet Explorer/TypedURLs"))
            {
                foreach (ListViewItem item in listViewIE.CheckedItems)
                {
                    userKey.DeleteValue(item.Tag as string, false); // false, 指定的值不存在时不引发异常。
                    item.Remove();
                }
            }
        }
        #endregion

        #region DateTimeFormatInfo
        private void timerInfo_Tick(object sender, EventArgs e)
        {
            Application.CurrentCulture.ClearCachedData();
            DateTime solar = DateTime.Now;
            int month = lunarCalendar.GetMonth(solar);
            int leapMonth = lunarCalendar.GetLeapMonth(lunarCalendar.GetYear(solar));
            if (0 < leapMonth && leapMonth <= month)
                --month;
            statusLabelTime.Text = string.Format("{0:F} [{1} {2:00}]", solar, DateTimeFormatInfo.CurrentInfo.MonthNames[month - 1], lunarCalendar.GetDayOfMonth(solar));
        }
        #endregion
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值