精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Visual Studio 2010既簡單又絢麗的新功能

開發(fā) 后端
在微軟Visual Studio 2010的發(fā)布會上,我們看到了很多關于VS2010的新特點和功能,文章將介紹幾個簡單但很絢麗的功能。

Visual Studio 2010正式版剛剛發(fā)布不久,但通過微軟在發(fā)布會上的演示,我們就已經(jīng)看到了VS2010嶄新的用戶體驗。在這些新功能中,微軟也為我們增加了很多應用的擴展。

1、文件的代碼行數(shù)
2、文件的字符數(shù)
3、命名空間的個數(shù)
4、字段個數(shù)
5、接口個數(shù)
6、類的個數(shù)
7、函數(shù)個數(shù)
8、屬性個數(shù)
9、注釋的數(shù)量
10、統(tǒng)計文件的大小(Bytes, KB, MB等)。

Visual Studio 2010擴展信息

當您鍵入您的代碼,你會看到信息窗口中的數(shù)據(jù)會即時更新,這個信息窗口,是利用可擴展面板。你可以把它看成兩個部分,每一個部分都可以根據(jù)您的需要展開和折疊。這樣,當你不需要它時,你將它可以折疊起來,需要的時候,將它展開。下面演示如何展開/折疊這個控件。

VS2010信息窗口

這個控件有三個特殊的狀態(tài)。***個狀態(tài)是一個很小的擴展按鈕。如上圖的***部分。只需點擊它,就會打開控件右側(cè)的面板,這個面板顯示文件的基本數(shù)據(jù),如上圖的第二部分。這個控件還有一個可擴展面板,如果點擊擴展,就會看到下面的面板,其中顯示其他的統(tǒng)計數(shù)據(jù),如上圖的第三部分。

實現(xiàn)篇:

1、 Microsoft Visual Studio 2010
2、 Visual Studio 2010 SDK

你安裝Visual Studio SDK之后,你的Visual Studio 2010中會多出下面這些模板:

Visual Studio 2010模版

這篇文章中,我們使用模板Editor ViewPort Adornment實現(xiàn)這個擴展,此模板將為你的代碼編輯器的帶來一個裝飾品。

其實這個擴展包一個WPF用戶控件,我把它放進VS的視窗中就成了信息框。它還含有兩個類,一個類用來解析代碼,獲取代碼的相關信息;另一個類用來處理自定義編輯器的事件和當頁以及加載的時候?qū)PF控件添加到頁面中。

***步:創(chuàng)建一個Viewport Adornment項目

我們從Extensibility中選擇Viewport Adornment模板創(chuàng)建一個項目。這將生成一個SourceManifest文件和兩個類文件。一個是Adornment類本身,另外一個是AdornmentFactory類。

第二步:添加一個WPF用戶控件

右鍵單擊項目,選擇添加一個新的WPF用戶控件。為了簡單起見,我使用了一個用戶控件。這個用戶控件實際上包含一個Expander控件,設置它的ExpandDirection = Left,它里面又包含了一些TextBlock控件和另外一個Expander ,設置里面的這個Expander的ExpandDirection = Down。看下面的代碼(我刪除不必要的元素,使其更簡單):

  1. <Expander ExpandDirection="Left" Style="{DynamicResource ExpanderStyle1}"   
  2. x:Name="expMain" > 
  3. <StackPanel> 
  4. <TextBlock x:Name="txtNoLines"   
  5. Text="No of Lines : {0}"   
  6. Margin="25 25 25 0"   
  7. FontSize="12"   
  8. FontFamily="Verdana"   
  9. FontWeight="Bold"   
  10. Foreground="Yellow"></TextBlock> 
  11. <TextBlock x:Name="txtNoCharacters"   
  12. Text="No of Characters : {0}"   
  13. Margin="25 5 25 15"   
  14. FontSize="12"   
  15. FontFamily="Verdana"   
  16. FontWeight="Bold"   
  17. Foreground="Yellow"></TextBlock> 
  18. <Expander x:Name="expCodeInfo" ExpandDirection="Down"   
  19. Header="Code Information"> 
  20. <StackPanel> 
  21. <TextBlock x:Name="txtClassInfo"   
  22. Margin="25 25 25 0"   
  23. FontSize="12"   
  24. FontFamily="Verdana"   
  25. FontWeight="Bold"   
  26. Foreground="LightYellow"/> 
  27. <Line 
  28. Margin="0,4" 
  29. SnapsToDevicePixels="True" 
  30. Stroke="Gold" 
  31. Stretch="Fill" 
  32. X1="0" X2="1"   
  33. /> 
  34. <TextBlock x:Name="txtFileSize" 
  35. Margin="25 5 25 15"   
  36. FontSize="12"   
  37. FontFamily="Verdana"   
  38. FontWeight="Bold"   
  39. Foreground="AliceBlue"/> 
  40. </StackPanel> 
  41. </Expander> 
  42. </StackPanel> 
  43. </Expander> 

你可以看到,代碼很簡單,兩個Expanders,一個用來顯示基本的統(tǒng)計信息和另外一個顯示擴展的統(tǒng)計信息。我還使用StackPanel來固定TextBlocks布局。現(xiàn)在,如果你看一下后臺代碼,發(fā)現(xiàn)它也一樣簡單。其實我已經(jīng)創(chuàng)建了一個CodeInfoTracker類,用它來為我們分析源代碼文件。我只是為我們的用戶控件添加了一個構(gòu)造函數(shù),使用戶控件更具擴展性而已。

  1. private CodeInfoTracker _cinfo;  
  2. private CodeInfoTracker.Calculators _calculator;  
  3. public ucInfoBox(CodeInfoTracker cinfo)  
  4. : this()  
  5.  {  
  6. this._cinfo = cinfo;  
  7. }  
  8. public void UpdateInfo(CodeInfoTracker info)  
  9. {  
  10. _calculator = info.PerFormCalculate();  
  11. this.txtNoLines.Text = string.Format("No of Lines : {0}",   
  12. _calculator.no_of_lines);  
  13. this.txtNoCharacters.Text = string.Format("No of Characters : {0}",   
  14. _calculator.no_of_characters);  
  15. this.txtFileSize.Text = string.Format("Total File Size : {0}",   
  16. _calculator.totalfilesize);  
  17.  
  18. StringBuilder builder = new StringBuilder();  
  19. if (this._calculator.interfaces != 0)  
  20. builder.AppendFormat("Interfaces : {0}\n\r",   
  21. this._calculator.interfaces);  
  22. if (this._calculator.namespaces != 0)  
  23. builder.AppendFormat("NameSpaces : {0}\n\r",   
  24. this._calculator.namespaces);  
  25. if (this._calculator.classes != 0)  
  26. builder.AppendFormat("Classes : {0}\n\r",   
  27. this._calculator.classes);  
  28. if (this._calculator.methods != 0)  
  29. builder.AppendFormat("Methods : {0}\n\r", this._calculator.methods);  
  30. if (this._calculator.properties != 0)  
  31. builder.AppendFormat("Properties : {0}\n\r",   
  32. this._calculator.properties);  
  33. if (this._calculator.fields != 0)  
  34. builder.AppendFormat("Fields : {0}\n\r", this._calculator.fields);  
  35. if (this._calculator.comments != 0)  
  36. builder.AppendFormat("Comments : {0}\n\r", this._calculator.comments);  
  37. if (builder.Length > 0)  
  38. {  
  39. this.txtClassInfo.Visibility = System.Windows.Visibility.Visible;  
  40. this.txtClassInfo.Text = builder.ToString();  
  41. }  
  42. else  
  43. {  
  44. this.txtClassInfo.Text = "";  
  45. this.txtClassInfo.Visibility = System.Windows.Visibility.Hidden;  
  46. }  

使用了一個結(jié)構(gòu)體Calculators ,這個結(jié)構(gòu)體放置在我們的自定義類中,它有幾個int屬性用來保存分析源文件獲取的所有信息。 info.PerFormCalculate(); 給出分析的結(jié)果。這里使用的所有獲取的信息來更新了UIElements。 #p#

第三步:創(chuàng)建獲取源文件信息的類

雖然代碼存在一些復雜性,但是這個類其實很簡單。我很感謝CS Parser [^],它幫助我自動地解析源代碼。這個類需要一個IWpfTextView對象,它代表著Visual Studio 2010文本編輯器。實際上WpfTextView實現(xiàn)了IWpfTextView。在執(zhí)行期間這個類接受這個對象。

我可以從WPFTextView.TextSnapshot.GetText()獲得到了源代碼。在我調(diào)用的這個分析的時候,我只需要檢測的代碼是什么語言寫的。開始我想自己來實現(xiàn),但是感謝上帝,我在WPFTextView中發(fā)現(xiàn)已經(jīng)存在這個對象了。

  1. public enum Language  
  2. {  
  3. CSharp, VisualBasic, Indeterminate  
  4. }  
  5. internal Language DetectLanguage  
  6. {  
  7. get  
  8. {  
  9. string langtype =   
  10. this._view.FormattedLineSource.TextAndAdornmentSequencer.  
  11. SourceBuffer.ContentType.DisplayName;  
  12. if(langtype.Equals("CSHARP",   
  13. StringComparison.InvariantCultureIgnoreCase))  
  14. return Language.CSharp;  
  15. else if(langtype.Equals("BASIC",   
  16. StringComparison.InvariantCultureIgnoreCase))  
  17. return Language.VisualBasic;  
  18. else  
  19. return Language.Indeterminate;  
  20. }  

DetectLanguage妥善地利用WPFTextView對象的FormattedLineSource.TextAndAdornmentSequencer。SourceBuffer.ContentType.DisplayName,這個屬性告訴我是使用了哪種語言。之后我創(chuàng)建了一個新的方法PerFormCalculate,用它來解析源代碼,它返回一個Calculation結(jié)構(gòu)對象。

第四步:創(chuàng)建 Adornment Factory 類

回到這個擴展,我創(chuàng)建一個Adornment(InfoBoxAdornmentFactory)的Factory類。這個類繼承IWpfTextViewCreationListener,用來監(jiān)聽WPF的編輯和創(chuàng)建事件。

  1. [Export(typeof(IWpfTextViewCreationListener))]  
  2. [ContentType("text")]  
  3. [TextViewRole(PredefinedTextViewRoles.Document)]   
  4. internal sealed class InfoBoxAdornmentFactory : IWpfTextViewCreationListener  
  5. {  
  6. [Export(typeof(AdornmentLayerDefinition))]  
  7. [Name("AlwaysVisibleInfoBox")]  
  8. [Order(After = PredefinedAdornmentLayers.Selection)]  
  9. [TextViewRole(PredefinedTextViewRoles.Interactive)]  
  10. public AdornmentLayerDefinition editorAdornmentLayer = null;  
  11. public void TextViewCreated(IWpfTextView textView)  
  12. {  
  13. new AlwaysVisibleInfoBox(textView);  
  14. }  
  15. }  

這里,你可以看到我在這個類上使用了很多Attributes,像ContentType,它定義了我們只處理文本格式的編輯器;還有TextViewRole,它定義了將被這個類處理的textview的類型。在這個類中,我創(chuàng)建了一個AdornmentLayerDefination對象。可能你想知道我們沒有使用它,無什么還需要定義它呢,它只是用來配置屬性的。Order屬性指定,當,InfoBox在層被選之后監(jiān)聽,Name是編輯擴展的名字。

第五步:創(chuàng)建Adornment 類

Adornment類實際創(chuàng)建了一個WPF用戶控件對象,并設置它的視圖畫布。在內(nèi)部構(gòu)造函數(shù)中,我處理IWpfTextView.LayoutChanged事件,當代碼修改或者布局改變的時候,就觸發(fā)這個事件。

因此,通過這一事件,當我們編輯的文檔時,我們可以很容易地得到回調(diào)。當瀏覽器編輯器的大小改變時,我還通過處理WPFTextView.ViewportHeightChanged,WPFTextView.ViewportWidthChanged得到回調(diào),使我們可以重新定位相應的UserControl。

  1. public AlwaysVisibleInfoBox(IWpfTextView view)  
  2. {  
  3. _view.LayoutChanged += this.OnLayoutChanged;  
  4. this.GetLayer();  
  5.  }  
  6. private void GetLayer()  
  7. {  
  8.  _adornmentLayer = this._view.GetAdornmentLayer("AlwaysVisibleInfoBox");  
  9. _view.ViewportHeightChanged += delegate { this.onSizeChange(); };  
  10. _view.ViewportWidthChanged += delegate { this.onSizeChange(); };  
  11. }  
  12. private void OnLayoutChanged(object sender, TextViewLayoutChangedEventArgs e)  
  13. {  
  14. this._info = new CodeInfoTracker(_view);  
  15. this.infobox.UpdateInfo(this._info);  
  16. }  
  17. public void onSizeChange()  
  18. {  
  19.  
  20. _adornmentLayer.RemoveAllAdornments();  
  21. Canvas.SetLeft(infobox, _view.ViewportRight - 255);  
  22.  Canvas.SetTop(infobox, _view.ViewportTop + 10);  
  23.  
  24. _adornmentLayer.AddAdornment(AdornmentPositioningBehavior.ViewportRelative,   
  25.  null, null,   
  26. infobox, null);  
  27.  } 

因此,構(gòu)造函數(shù)只是調(diào)用GetLayer來獲取的Layer對象,發(fā)生在ViewportHeightChanged和ViewportWidthChanged ViewPortSizeChage事件。當一個布局改變時,我就能更新這個用戶的控件。至此,我們成功地建立我們的擴展。你可以使用F5運行它,它會打開一個Visual Studio 2010的Experimental實例。

安裝和卸載這個擴展:

安裝和卸載這個擴展是非常容易的。當您編譯項目后,它會產(chǎn)生一個VSIX文件。您可以只需雙擊這個文件,它會自動安裝到Visual Studio 2010。

安裝和卸載這個擴展

文章轉(zhuǎn)自海納百川的博客,

原文地址:http://www.cnblogs.com/zhuqil/archive/2010/04/15/Visual-Studio-Extension.html

 

【編輯推薦】

  1. 圖解Visual Studio 2010中的UML建模功能
  2. 解密中國研發(fā)團隊如何開發(fā)VS2010新特性
  3. Visual Studio 2010化繁為簡 令項目管理更輕松
  4. Visual Studio 2010 Lab Management功能
  5. Visual Studio 2010將再度擁抱UML

 

責任編輯:王曉東 來源: 博客園
相關推薦

2010-01-13 09:11:04

Visual Stud

2013-11-13 10:07:26

Visual Stud微軟

2010-02-22 14:00:29

Visual Stud

2010-04-08 15:14:59

Visual StudASP.NET 4.

2013-06-04 17:08:19

Visual Stud

2009-05-19 09:21:50

Visual Stud云計算并行編程

2009-10-22 14:50:00

Visual Stud

2010-01-15 09:30:22

Visual Stud

2009-12-02 11:22:14

Visual Stud

2009-04-23 14:05:28

Visual Stud歷史調(diào)試功能

2010-04-12 08:43:45

Visual Stud

2009-12-02 09:43:38

Visual Stud

2012-04-25 11:04:13

Visual Stud

2009-10-22 09:47:33

Visual Stud

2009-12-02 10:44:30

Visual Stud

2010-04-15 08:40:00

UML建模Visual Stud

2009-03-10 10:21:05

災難恢復Restart Manvs

2009-10-19 09:48:24

Visual Stud

2009-08-21 13:29:20

Visual Stud

2009-11-19 10:55:33

Visual Stud
點贊
收藏

51CTO技術(shù)棧公眾號

男人的天堂在线视频| 日本网站在线免费观看| 日日夜夜亚洲| 一级特黄大欧美久久久| 国产无套精品一区二区| 午夜精品免费观看| 国产又大又长又粗| 午夜av不卡| 中文字幕一区二区三区av| 国产高清不卡av| 中文在线字幕av| 夜夜嗨一区二区| 中文字幕亚洲欧美日韩在线不卡 | 亚洲精品护士| 一本色道久久88亚洲综合88| 亚洲免费观看在线| 国产精品美女午夜爽爽| 亚洲国产成人av| 亚洲永久一区二区三区在线| 亚洲人视频在线观看| 精品在线观看视频| 日本精品免费一区二区三区| 久草免费在线视频观看| 精品国产一区二区三区av片| 亚洲高清一区二| 手机在线播放av| 国产欧美自拍| 在线看日本不卡| 人妻熟妇乱又伦精品视频| 黄a在线观看| 国产精品毛片无遮挡高清| 免费国产一区二区| 人妻无码中文字幕| 国产91精品免费| 91精品视频播放| 亚洲熟妇无码久久精品| 久久精品日韩欧美| 91精品国产电影| 久久久久久国产精品视频| 999精品色在线播放| 在线免费看av不卡| 男人操女人动态图| 久久91麻豆精品一区| 日韩激情av在线免费观看| aaa黄色大片| 成人高潮a毛片免费观看网站| 制服视频三区第一页精品| 午夜在线观看av| 成人亚洲综合| 欧美性高清videossexo| 一区二区三区无码高清视频| 日日噜噜噜噜久久久精品毛片| 成人av免费电影网站| 色综合天天天天做夜夜夜夜做| 成人在线观看你懂的| 丁香花高清在线观看完整版| 亚洲一区二区偷拍精品| 欧洲精品在线播放| aa视频在线观看| 精品久久香蕉国产线看观看亚洲| 免费国产黄色网址| 久久毛片亚洲| 欧美日韩免费一区二区三区| 亚洲va在线va天堂va偷拍| 国产一区二区三区亚洲综合| 91精品国产综合久久精品性色| 亚洲男人天堂2021| 久久av国产紧身裤| 亚洲男子天堂网| 污污视频网站在线免费观看| 国产精品videosex性欧美| 欧美日韩国产二区| 国产精品一区二区6| 首页国产欧美日韩丝袜| 国产美女久久精品| www.久久成人| 99久久国产综合色|国产精品| 欧美日韩国产精品一卡| 日本在线免费| 亚洲激情一二三区| 日韩精品―中文字幕| 久久亚洲精品爱爱| 日韩欧美国产一区在线观看| aaaaa一级片| 色无极亚洲影院| 欧美国产乱视频| 在线视频一区二区三区四区| 老司机精品视频一区二区三区| 99久久久久国产精品免费| 黄频在线免费观看| 国产日韩综合av| 菠萝蜜视频在线观看入口| xxx.xxx欧美| 欧美色倩网站大全免费| 久久久老熟女一区二区三区91| 精品一区二区三| 久久黄色影院| 91精品国产高清久久久久久91| 夜夜爽妓女8888视频免费观看| 国产综合色精品一区二区三区| 精品视频导航| 国内精品不卡| 在线观看国产91| 欧美性生交xxxxx| 国产大片一区| 国产成人福利视频| 欧美天堂在线视频| 中文字幕在线观看不卡| av天堂永久资源网| 亚洲1区在线| www.久久撸.com| 中文人妻av久久人妻18| 福利一区二区在线| 一级一片免费播放| 精品免费av在线| 亚洲国产第一页| 欧美日韩中文字幕在线观看 | 亚洲欧美色一区| 久久国产乱子伦免费精品| 57pao国产一区二区| 日韩亚洲欧美成人| 91视频久久久| 91麻豆国产自产在线观看| 日韩成人三级视频| 精品视频一二| 久久精品99久久久久久久久| 精品国产乱子伦| 91在线观看免费视频| 国产尤物av一区二区三区| 亚洲免费资源| 自拍偷拍亚洲欧美| 中文字幕永久免费视频| 国产无人区一区二区三区| 男人亚洲天堂网| 日韩理论电影中文字幕| 国内精品久久久久久| www精品国产| 亚洲美女视频在线| 亚洲欧美日本一区二区三区| 成人情趣视频网站| 国产精品美乳在线观看| 成人动漫在线免费观看| 91福利在线免费观看| 亚洲图中文字幕| 国产精品久久久久久成人| 天堂久久久久va久久久久| 精品久久久久久一区二区里番| 丰乳肥臀在线| 日韩电视剧免费观看网站| 久久久久久久久影院| 91丝袜美腿高跟国产极品老师| 三上悠亚久久精品| 六月丁香久久丫| 国产91精品黑色丝袜高跟鞋| 日韩欧美亚洲系列| 色婷婷一区二区| 中文字幕av久久爽一区| 免费成人av资源网| 日本特级黄色大片| 青草伊人久久| 91高清在线免费观看| 日韩一二三四| 欧美视频在线播放| 欧美第一页在线观看| 国产很黄免费观看久久| 久操网在线观看| 亚洲人和日本人hd| 国产精品免费电影| 国产欧美黑人| 亚洲激情在线观看| 性高潮视频在线观看| 中文字幕日本不卡| 日韩无码精品一区二区| 日韩精品每日更新| 国产日韩欧美大片| 日本欧美韩国国产| 国产精品情侣自拍| 精精国产xxxx视频在线中文版| 亚洲精品美女久久久| 在线视频 91| 亚洲国产精品天堂| 欧美精品日韩在线| 成人性生交大片免费看中文网站| 九一国产精品视频| 99久久国产综合精品成人影院| 懂色一区二区三区av片| 日韩精品第一| 国模gogo一区二区大胆私拍| 国产乱理伦片a级在线观看| 91精品国产乱| 9i精品福利一区二区三区| 亚洲天堂精品视频| 久久精品老司机| 国产一区二区三区av电影| 欧美牲交a欧美牲交| 亚洲最大黄网| 日韩一区不卡| 国产极品美女高潮无套嗷嗷叫酒店| 欧美在线1区| 色噜噜一区二区| 精品五月天堂| 成人欧美一区二区三区黑人孕妇| 理论片午夜视频在线观看| 久久久国产影院| 久久视频www| 欧美r级在线观看| 亚洲天堂手机在线| 色综合咪咪久久| 久草中文在线视频| 国产精品久久久久久久久快鸭 | 91在线一区| 国产精品视频免费在线| 午夜不卡影院| 国内自拍欧美激情| 成人免费观看视频大全| 一本色道久久88精品综合| 神马精品久久| 精品国产伦理网| 国产成人三级一区二区在线观看一| 91高清在线观看| 最新中文字幕一区| 亚洲国产精品久久人人爱| 亚洲天堂黄色片| 国产精品久久久一本精品 | 国产一区毛片| 精品在线视频一区二区| 亚洲1区在线| 亚洲影视中文字幕| 91嫩草国产线观看亚洲一区二区| 国产精品福利观看| 欧美三级网址| 日韩免费观看在线观看| 伊人网在线播放| 国内精品视频在线| 丁香花视频在线观看| 欧美精品www在线观看| 午夜伦理在线视频| 欧美国产第一页| 白白色在线观看| 久久理论片午夜琪琪电影网| 欧美野外wwwxxx| 欧美国产在线视频| 91白丝在线| 91国产中文字幕| 精品丝袜在线| 5566成人精品视频免费| 在线播放高清视频www| 欧美一区视频在线| 日日av拍夜夜添久久免费| 欧美一级免费视频| 欧美电影免费观看高清完整| 奇米四色中文综合久久| 丝袜美腿一区| 日韩欧美美女一区二区三区| 麻豆精品国产传媒| 日本不卡123| 亚洲综合在线网站| 麻豆精品一区二区av白丝在线| www.夜夜爽| 国产一区二区三区久久久 | 999在线精品| 国产私拍一区| 狠狠做六月爱婷婷综合aⅴ| 在线区一区二视频| 国产a级片视频| 97se亚洲国产综合自在线观| 国产性生活毛片| 久久久99免费| 日本一级特级毛片视频| 亚洲综合成人在线视频| 国产精品一区二区三区四| 色又黄又爽网站www久久| 国产精品免费无遮挡无码永久视频| 在线观看亚洲专区| 99久久精品国产一区二区成人| 日韩精品一区二区三区三区免费 | 狠狠精品干练久久久无码中文字幕| 欧美欧美全黄| 成人精品视频一区二区| 蜜桃传媒麻豆第一区在线观看| 成人在线短视频| 91亚洲精品久久久蜜桃网站| 成人午夜免费影院| 亚洲午夜久久久| 亚洲综合成人av| 日韩久久久精品| 好男人免费精品视频| 欧美另类极品videosbestfree| 欧产日产国产精品视频| 国产欧美一区二区三区久久| 精品伊人久久久| 一区不卡视频| 亚洲免费一区二区| 韩国三级hd中文字幕有哪些| 91麻豆文化传媒在线观看| 亚洲女人久久久| 精品久久久久久亚洲精品| 91在线观看喷潮| 亚洲欧美成人在线| 国产丝袜在线播放| 国产日韩av在线播放| 四虎5151久久欧美毛片| 国产女主播av| 日韩成人一级大片| 人妖粗暴刺激videos呻吟| 中文字幕一区二区三区视频| 手机看片久久久| 精品国产亚洲在线| 国产伦精品一区二区三区四区视频| 伊人www22综合色| 中文精品一区二区三区| 老司机亚洲精品| 久久久国产精品无码| 亚洲美女精品一区| 中文字幕免费播放| 亚洲欧美日韩高清| 毛片在线网站| 99国产超薄肉色丝袜交足的后果| 日韩精品诱惑一区?区三区| 国产真实乱子伦| 99精品国产99久久久久久白柏| 男人与禽猛交狂配| 欧美日韩国产一区二区三区地区| 国产专区在线播放| 欧美最顶级丰满的aⅴ艳星| av男人一区| www.av91| 国产成人午夜精品5599| 黑人操日本美女| 欧美精品在线视频| 免费av网站在线看| 国产主播喷水一区二区| 久久伦理在线| 伊人影院综合在线| 中文在线一区二区| 久久久久久av无码免费看大片| 亚洲欧洲视频在线| 亚洲人免费短视频| 水蜜桃亚洲一二三四在线| 日韩电影免费在线看| 丁香花五月婷婷| 欧美曰成人黄网| а天堂8中文最新版在线官网| 国产成人精品午夜| 欧美老女人另类| 尤物国产在线观看| 国产精品第一页第二页第三页| 一区二区三区www污污污网站| 亚洲午夜av电影| 中文.日本.精品| 亚洲精品一区二区三区蜜桃久| 蜜臀久久99精品久久久久久9| 国产调教在线观看| 欧美久久久久中文字幕| gogogogo高清视频在线| 不卡视频一区二区三区| 亚洲国产综合在线看不卡| 国产在线不卡av| 色婷婷亚洲综合| 思思99re6国产在线播放| 91久久精品久久国产性色也91| 中文字幕日韩一区二区不卡| 永久免费看片在线观看| 亚洲v日本v欧美v久久精品| 天天在线女人的天堂视频| 国产精品成人播放| 亚洲精品一区二区在线看| 亚洲成a人无码| 好吊成人免视频| 在线免费观看黄色av| 成人网中文字幕| 日韩一区二区久久| 免费看日本黄色片| 日韩区在线观看| 亚洲天堂手机| 一级黄色免费在线观看| 国产不卡一区视频| 男人天堂2024| 亚洲一区二区中文在线| 国产精品情侣呻吟对白视频| 欧美三区在线观看| 日日夜夜天天综合入口| 欧美二区在线| 国产精一区二区三区| 探花视频在线观看| 欧美成人合集magnet| 曰本一区二区三区视频| 亚洲图片 自拍偷拍| 亚洲成人精品一区| 97在线观看免费观看高清| 成人欧美一区二区三区在线观看| 免费亚洲网站| 激情五月婷婷在线| 国产一区二区三区视频免费| 无人区乱码一区二区三区| 国内外免费激情视频| 亚洲一级电影视频| 一本一道波多野毛片中文在线| 国产99在线播放| 久久99国产精品久久|