不卡视频在线观看_三级网站视频在线观看_91精品网站_国产综合一区二区

完善主體資料,免費贈送VIP會員!
* 主體類型
* 企業(yè)名稱
* 信用代碼
* 所在行業(yè)
* 企業(yè)規(guī)模
* 所在職位
* 姓名
* 所在行業(yè)
* 學歷
* 工作性質
請先選擇行業(yè)
您還可以選擇以下福利:
行業(yè)福利,領完即止!

下載app免費領取會員

NULL

ad.jpg

二次開發(fā)教程:WPF DataContent內存釋放問題

發(fā)布于:2019-07-25 15:06:21

網(wǎng)友投稿

更多

最近發(fā)現(xiàn)一個有趣的事,通過Window.dataContent來設置綁定以后,


窗體關閉以后 ViewModel 并沒有釋放,再次調用改窗體后,前一個ViewModel才釋放,


或者是程序關閉以后才釋放 ,搞不懂。。。


如果要馬上釋放ViewModel可以在Window關閉以后將DataContent 設置為null ,


這樣ViewModel是可以釋放的


下面是測試代碼,大神請指教!




主窗體:


<Window x:Class="WeakViewModel.MainWindow"

        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"

        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"

        xmlns:local="clr-namespace:WeakViewModel"

        mc:Ignorable="d"

        Title="MainWindow" Height="350" Width="525">

    <Grid>

        <Button Content="Win1"  HorizontalAlignment="Left" Margin="367,211,0,0" VerticalAlignment="Top" Width="75" Click="Button_Click"/>

        <Button Content="GC" HorizontalAlignment="Left" Margin="128,211,0,0" VerticalAlignment="Top" Width="75" Click="Button_Click_1"/>

    </Grid>

</Window>


    public partial class MainWindow : Window

    {

        public MainWindow()

        {

            InitializeComponent();

        }


        private void Button_Click(object sender, RoutedEventArgs e)

        {

            TestWindow win = new TestWindow();

            win.Owner = this;

            win.DataContext = ViewModel.Default;

            win.Show();

        }


        private void Button_Click_1(object sender, RoutedEventArgs e)

        {            

            GC.Collect();

        }

    }




測試窗體:


<Window x:Class="WeakViewModel.TestWindow"

        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"

        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"

        xmlns:local="clr-namespace:WeakViewModel"

        mc:Ignorable="d"        

        Title="TestWindow" Height="300" Width="300">

    <Grid>

        <TextBox HorizontalAlignment="Left" Height="23" Margin="96,111,0,0" TextWrapping="Wrap" Text="{Binding Path=Text}" VerticalAlignment="Top" Width="120"/>

    </Grid>

</Window>


    public partial class TestWindow : Window

    {

        public TestWindow()

        {

            InitializeComponent();

            Closed += TestWindow_Closed;

        }

        ~ TestWindow()

        {

            MessageBox.Show("釋放TestWindow");

        }

        private void TestWindow_Closed(object sender, EventArgs e)

        {


            //注釋這個行就能看出差別


            DataContext = null;

        }

    }




測試ViewModel:


    public class ViewModel

    {

        private static WeakReference _default = null;

        private static object locker = new object();

        public static ViewModel Default

        {

            get

            {

                if(_default==null||!_default.IsAlive)

                {

                    lock (locker)

                    {

                        _default = new WeakReference(new ViewModel());

                    }

                }

                return _default.Target as ViewModel;

            }

        }


        private ViewModel()

        {


        }


         ~ViewModel()

        {

            MessageBox.Show("釋放 ViewModel"+Text);

        }


        private string _text = string.Empty;

        public string Text

        {

            get

            {

                return _text;

            }

            set

            {

                _text = value;

            }

        }


    }

本文版權歸腿腿教學網(wǎng)及原創(chuàng)作者所有,未經(jīng)授權,謝絕轉載。

未標題-1.jpg

上一篇:revit中尺寸標注的新奇方法

下一篇:二次開發(fā)教程:WPF 給控件添加可以綁定的命令

60acb4e0ef112.png
不卡视频在线观看_三级网站视频在线观看_91精品网站_国产综合一区二区

      国产免费成人av| 国产精品专区第二| 亚洲国产乱码最新视频| 亚洲欧美日韩国产| 国产精品久99| 欧美一级在线播放| 在线观看国产日韩| 欧美日韩麻豆| 亚洲一区www| 韩国一区二区三区在线观看| 亚欧成人在线| 亚洲国产欧美日韩| 欧美a一区二区| 午夜免费在线观看精品视频| 国产一区二区三区久久久| 蜜桃av久久久亚洲精品| 最新国产精品拍自在线播放| 欧美日一区二区三区在线观看国产免 | 亚洲欧美日韩精品在线| 在线国产精品一区| 欧美日韩1区2区| 亚洲精品国产精品久久清纯直播| 欧美电影免费观看高清完整版| 亚洲欧美伊人| 一区二区三区三区在线| 亚洲国产日韩美| 国内精品视频666| 国产嫩草一区二区三区在线观看| 毛片一区二区| 久久人人爽人人| 久久精品人人| 久久永久免费| 欧美电影免费观看网站| 久久综合中文色婷婷| 亚洲在线一区二区三区| 亚洲一区二区成人在线观看| 日韩一级大片在线| aa级大片欧美| 一本色道久久综合狠狠躁篇的优点 | 欧美午夜久久久| 欧美日韩中文字幕在线| 国产精品系列在线| 国产亚洲欧美日韩精品| 有坂深雪在线一区| 宅男66日本亚洲欧美视频| 亚洲永久字幕| 亚洲精品视频免费在线观看| 亚洲第一中文字幕在线观看| 在线精品亚洲| 亚洲欧美精品伊人久久| 久久精品二区| 国产精品日本精品| 国产日韩综合一区二区性色av| 国产精品国产三级国产| 亚洲福利国产精品| 久久黄金**| 欧美午夜视频一区二区| 亚洲福利专区| 久久久一区二区| 国产精品久久久久秋霞鲁丝| 亚洲国产另类精品专区 | 久久尤物电影视频在线观看| 欧美日韩国产麻豆| 精品999日本| 久久国产精品久久久久久电车| 欧美精品日韩一本| 激情婷婷欧美| 久久av一区二区三区亚洲| 国产精品白丝jk黑袜喷水| 亚洲国产欧美一区| 亚洲人人精品| 麻豆精品视频| 亚洲高清av| 欧美精选在线| 亚洲免费在线视频| 免费成人黄色片| 激情文学综合丁香| 欧美成人激情视频免费观看| 亚洲黄色影院| 国产精品综合av一区二区国产馆| 欧美在线看片| 亚洲第一免费播放区| 欧美日韩天天操| 欧美中文字幕精品| 亚洲欧洲一级| 国产农村妇女精品| 欧美激情aaaa| 久久亚洲精品伦理| 亚洲午夜精品国产| 国产亚洲免费的视频看| 欧美日韩国产精品 | 欧美久久久久久久久久| 亚洲在线中文字幕| 91久久国产自产拍夜夜嗨| 国产精品成人一区二区| 欧美国产三级| 猫咪成人在线观看| 久久国产视频网| 欧美亚洲视频| 香蕉视频成人在线观看| 亚洲伊人久久综合| 99视频有精品| 亚洲尤物视频在线| 一区二区三区导航| 亚洲男人的天堂在线| 亚洲婷婷综合色高清在线| 黄色日韩网站| 在线观看日韩专区| 国产在线视频欧美| 亚洲国产成人精品女人久久久| 国产精品成人观看视频免费| 国产精品国产成人国产三级| 欧美午夜精品一区| 黄色成人在线网址| 亚洲人成网站777色婷婷| 亚洲黄色片网站| av成人免费| 久久精品噜噜噜成人av农村| 亚洲你懂的在线视频| 久久九九国产精品怡红院| 欧美freesex交免费视频| 欧美日韩人人澡狠狠躁视频| 国产精品天天摸av网| 男男成人高潮片免费网站| 久久久久久999| 欧美视频在线观看免费网址| 国产精品久久久久久久久免费桃花 | 欧美剧在线免费观看网站| 国产精品三级视频| 亚洲精品偷拍| 美女视频网站黄色亚洲| 国产精品毛片| 亚洲一区三区视频在线观看| 欧美福利一区二区三区| 国产精品一区二区三区四区五区| 国产日韩欧美夫妻视频在线观看| 亚洲黄色成人| 欧美激情1区2区3区| 狠狠综合久久| 欧美/亚洲一区| 最新亚洲一区| 欧美日韩国产成人精品| 一本一道久久综合狠狠老精东影业| 久久久人成影片一区二区三区| 欧美三区在线观看| 亚洲欧美怡红院| 国产一区二区三区久久| 久久久久久久久久久成人| 国产一区久久| 欧美激情日韩| 亚洲欧美视频一区| 国产一区二区剧情av在线| 久久久精品一区| 亚洲激情视频在线| 国产精品美女久久| 久久综合五月| 午夜精品婷婷| 亚洲精品一级| 亚洲激情图片小说视频| 国产精品av久久久久久麻豆网| 久久久久成人网| 亚洲一区二区动漫| aa日韩免费精品视频一| 国产一区视频在线观看免费| 国产精品第三页| 欧美日韩八区| 欧美精品一区二区三区视频| 欧美怡红院视频| 亚洲欧美日韩国产一区二区三区| 亚洲人屁股眼子交8| 亚洲黄色在线| 亚洲免费av电影| 亚洲国产日韩在线| 国产综合色在线| 尤物九九久久国产精品的特点| 国产丝袜一区二区三区| 亚洲午夜久久久| 午夜国产欧美理论在线播放| 夜夜嗨av一区二区三区中文字幕| 91久久精品网| 99这里有精品| 亚洲一二三四区| 欧美在线免费一级片| 久久精品久久99精品久久| 久热综合在线亚洲精品| 欧美jizz19hd性欧美| 欧美日韩国产成人高清视频| 国产精品老牛| 91久久极品少妇xxxxⅹ软件| 亚洲私人影院| 久久天堂成人| 国产一级一区二区| 亚洲精品中文字幕女同| 欧美伊久线香蕉线新在线| 久久天天狠狠| 欧美四级在线| 亚洲人久久久| 久久中文字幕一区| 国产精品一级在线| 亚洲伊人伊色伊影伊综合网|