国产凹凸在线-国产拗女一区二区三区-国产白白视-国产白领-国产白拍-国产白丝jk被疯狂输-国产白丝喷-国产白丝在线

金喜正规买球

如何實現WinForm控件中DataGridView的行統計

轉帖|其它|編輯:郝浩|2010-12-02 11:20:18.000|閱讀 2141 次

概述:做WinForm開發離不開一些基本的控件,作為數據列表顯示控件中,其中最為重要的要數 DataGridView,以前用的是一些第三方控件,提供了比較靈活和方便的功能,比如:根據某列分組統計等等,確實方便,但加載第三方控件的缺點就是加載數據太慢,打包布署后體積大。因此本文主要介紹如何實現WinForm控件中DataGridView的行統計,希望對大家有幫助。

# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>

  做WinForm開發離不開一些基本的控件,作為數據列表顯示控件中,其中最為重要的要數 DataGridView,以前用的是一些第三方控件,提供了比較靈活和方便的功能,比如:根據某列分組統計等等,確實方便,但加載第三方控件的缺點就是加載數據太慢,打包布署后體積大,辦法自力更生才是生存之道。

  DataGridView的行統計匯總功能在網絡上搜索后,有一些同仁實現過(Summary DataGridView),但只是在某種特定的需求下實現了目標,要么是擴展不方便,要么是性能太差,加載一個DataGridView不知重復運行幾十次代碼(未做詳細統計) ,為了一勞永逸的解決這個問題,特改寫了代碼,在此提供給各位同仁,歡迎斧正。

1、首先,看使用方法:

dgvProjectList.ShowSummary(new string[] { "TotalIncome", "TotalFee", "TotalCost", "SaleAmount", "RetainedProfits" });

如果不使用統計匯總,不會對現有 DateGridView控件產生任何負作用,也不占用內存;"TotalIncome", "TotalFee", "TotalCost", "SaleAmount", "RetainedProfits" 為要統計的各行。

效果如下:

 

代碼如下:

1、DataGridView擴展方法定義

#region 顯示統計列
/// <summary>
/// 顯示DataGridView的統計信息
/// </summary>
/// <param name="dgv"></param>
/// <param name="SummaryColumns">要統計的列名稱或數據源綁定列名稱</param>
public static void ShowSummary(this DataGridView dgv,string[] SummaryColumns)
{
SummaryControlContainer summaryControl = new SummaryControlContainer(dgv,SummaryColumns);
dgv.Controls.Add(summaryControl);
//dgv.Tag = summaryControl;
summaryControl.BringToFront();
summaryControl.Show();
}
/// <summary>
/// 顯示DataGridView的統計信息
/// </summary>
/// <param name="dgv"></param>
/// <param name="DisplaySumRowHeader">是否顯示合計行標題</param>
/// <param name="SumRowHeaderText">合計列標題</param>
/// <param name="SumRowHeaderTextBold">合計列標題用粗體顯示</param>
/// <param name="SummaryColumns">要統計的列名稱或數據源綁定列名稱</param>
public static void ShowSummary(this DataGridView dgv, bool DisplaySumRowHeader, string SumRowHeaderText, bool SumRowHeaderTextBold, string[] SummaryColumns)
{
SummaryControlContainer summaryControl = new SummaryControlContainer(dgv, DisplaySumRowHeader, SumRowHeaderText, SumRowHeaderTextBold, SummaryColumns);
dgv.Controls.Add(summaryControl);
//dgv.Tag = summaryControl;
summaryControl.BringToFront();
summaryControl.Show();
}
#endregion

2、核心類定義

internal class SummaryControlContainer : UserControl
{
#region 公有屬性

private bool _DisplaySumRowHeader;
/// <summary>
/// 是否顯示合計行標題
/// </summary>
public bool DisplaySumRowHeader
{
get { return _DisplaySumRowHeader; }
set { _DisplaySumRowHeader = value; }
}


private string _SumRowHeaderText = "合計";
/// <summary>
/// 合計列標題
/// </summary>
public string SumRowHeaderText
{
get
{
if (_DisplaySumRowHeader)
{
return _SumRowHeaderText;
}
else
{
return string.Empty;
}
}
set
{
if (string.IsNullOrEmpty(value))
{
_SumRowHeaderText = "合計";
}
else
{
_SumRowHeaderText = value;
}
}
}
 

private bool _SumRowHeaderTextBold;
/// <summary>
/// 合計列標題用粗體顯示
/// </summary>
public bool SumRowHeaderTextBold
{
get { return _SumRowHeaderTextBold; }
set { _SumRowHeaderTextBold = value; }
}

private string[] _SummaryColumns;
/// <summary>
/// 要統計的列名稱或數據源綁定列名稱
/// </summary>
public string[] SummaryColumns
{
get { return _SummaryColumns; }
set
{
_SummaryColumns = value;
}
}

private string _FormatString = "F02";
public string FormatString
{
get { return _FormatString; }
set { _FormatString = value; }
}
#endregion

#region 私有變量
private Hashtable sumBoxHash;
private DataGridView dgv;
private Label sumRowHeaderLabel;
#endregion

#region 構造函數
public SummaryControlContainer(DataGridView dgv, string[] summaryColumns)
: this(dgv, true, "合計", false, summaryColumns)
{
}
public SummaryControlContainer(DataGridView dgv, bool displaySumRowHeader, string sumRowHeaderText,
bool sumRowHeaderTextBold, string[] summaryColumns)
{
if (dgv == null)
{
throw new Exception("DataGridView 不能為空!");
}

this.dgv = dgv;
_DisplaySumRowHeader = displaySumRowHeader;
_SumRowHeaderText = sumRowHeaderText;
_SumRowHeaderTextBold = sumRowHeaderTextBold;
_SummaryColumns = summaryColumns;
 

this.Visible = true;
this.Height = dgv.RowTemplate.Height;
this.Top = dgv.Height - this.Height;
this.Left = dgv.Left;
 this.BackColor = dgv.RowHeadersDefaultCellStyle.BackColor;

sumBoxHash = new Hashtable();
sumRowHeaderLabel = new Label();
sumRowHeaderLabel.Height = this.Height;
sumRowHeaderLabel.Width = dgv.RowHeadersWidth;
sumRowHeaderLabel.BackColor = dgv.RowHeadersDefaultCellStyle.BackColor;

this.dgv.Resize += new EventHandler(dgv_Resize);
this.dgv.Scroll += new ScrollEventHandler(dgv_Scroll);
this.dgv.ColumnWidthChanged += new DataGridViewColumnEventHandler(dgv_ColumnWidthChanged);
this.dgv.RowHeadersWidthChanged += new EventHandler(dgv_RowHeadersWidthChanged);

this.dgv.RowsAdded += new DataGridViewRowsAddedEventHandler(dgv_RowsAdded);
this.dgv.RowsRemoved += new DataGridViewRowsRemovedEventHandler(dgv_RowsRemoved);
this.dgv.CellValueChanged += new DataGridViewCellEventHandler(dgv_CellValueChanged);
this.dgv.DataSourceChanged += new EventHandler(dgv_DataSourceChanged);

this.dgv.ColumnAdded += new DataGridViewColumnEventHandler(dgv_ColumnAdded);
this.dgv.ColumnRemoved += new DataGridViewColumnEventHandler(dgv_ColumnRemoved);
this.dgv.ColumnStateChanged += new DataGridViewColumnStateChangedEventHandler(dgv_ColumnStateChanged);
this.dgv.ColumnDisplayIndexChanged += new DataGridViewColumnEventHandler(dgv_ColumnDisplayIndexChanged);

reCreateSumBoxes();

}
#endregion

#region 私有方法

/// <summary>
/// Checks if passed object is of type of integer
/// </summary>
/// <param name="o">object</param>
/// <returns>true/ false</returns>
protected bool IsInteger(object o)
{
if (o is Int64)
{
return true;
}
if (o is Int32)
{
return true;
}
if (o is Int16)
{
return true;
}
return false;
}

/// <summary>
/// Checks if passed object is of type of decimal/ double
/// </summary>
/// <param name="o">object</param>
/// <returns>true/ false</returns>
protected bool IsDecimal(object o)
{
if (o is Decimal)
{
return true;
}
if (o is Single)
{
return true;
}
if (o is Double)
{
return true;
}
return false;
}

/// <summary>
/// Calculate the Sums of the summary columns
/// </summary>
private void calcSummaries()
{
foreach (ReadOnlyTextBox roTextBox in sumBoxHash.Values)
{
if (roTextBox.IsSummary)
{
roTextBox.Tag = 0;
roTextBox.Text = "0";
roTextBox.Invalidate();
}
}
if (SummaryColumns != null && SummaryColumns.Length > 0 && sumBoxHash.Count > 0)
{
foreach (DataGridViewRow dgvRow in dgv.Rows)
{
foreach (DataGridViewCell dgvCell in dgvRow.Cells)
{
foreach (DataGridViewColumn dgvColumn in sumBoxHash.Keys)
{
if (dgvCell.OwningColumn.Equals(dgvColumn))
{
ReadOnlyTextBox sumBox = (ReadOnlyTextBox)sumBoxHash[dgvColumn];

if (sumBox != null && sumBox.IsSummary)
{
if (dgvCell.Value != null && !(dgvCell.Value is DBNull))
{
if (IsInteger(dgvCell.Value))
{
sumBox.Tag = Convert.ToInt64(sumBox.Tag) + Convert.ToInt64(dgvCell.Value);
}
else if (IsDecimal(dgvCell.Value))
{
sumBox.Tag = Convert.ToDecimal(sumBox.Tag) + Convert.ToDecimal(dgvCell.Value);
}

sumBox.Text = string.Format("{0}", sumBox.Tag);
sumBox.Invalidate();
}
}
}
}
}
}
}
}

/// <summary>
/// Create summary boxes for each Column of the DataGridView
/// </summary>
private void reCreateSumBoxes()
{
foreach (Control control in sumBoxHash.Values)
{
this.Controls.Remove(control);
}
sumBoxHash.Clear();

int iCnt = 0;

ReadOnlyTextBox sumBox;
List<DataGridViewColumn> sortedColumns = SortedColumns;
foreach (DataGridViewColumn dgvColumn in sortedColumns)
{
sumBox = new ReadOnlyTextBox();
sumBoxHash.Add(dgvColumn, sumBox);

sumBox.Top = 0;
sumBox.Height = dgv.RowTemplate.Height;
sumBox.BorderColor = dgv.GridColor;
sumBox.BackColor = dgv.DefaultCellStyle.BackColor;
sumBox.ForeColor = dgv.DefaultCellStyle.ForeColor;
sumBox.BringToFront();

if (dgv.ColumnCount - iCnt == 1)
{
sumBox.IsLastColumn = true;
}

if (SummaryColumns != null && SummaryColumns.Length > 0)
{
for (int iCntX = 0; iCntX < SummaryColumns.Length; iCntX++)
{
if (SummaryColumns[iCntX] == dgvColumn.DataPropertyName ||
SummaryColumns[iCntX] == dgvColumn.Name)
{
sumBox.TextAlign = TextHelper.TranslateGridColumnAligment(dgvColumn.DefaultCellStyle.Alignment);
sumBox.IsSummary = true;
sumBox.FormatString = dgvColumn.DefaultCellStyle.Format;

if (dgvColumn.ValueType == typeof(System.Int32) || dgvColumn.ValueType == typeof(System.Int16) ||
dgvColumn.ValueType == typeof(System.Int64) || dgvColumn.ValueType == typeof(System.Single) ||
dgvColumn.ValueType == typeof(System.Double) || dgvColumn.ValueType == typeof(System.Single) ||
dgvColumn.ValueType == typeof(System.Decimal))
{
sumBox.Tag = System.Activator.CreateInstance(dgvColumn.ValueType);
}
}
}
}

sumBox.BringToFront();
this.Controls.Add(sumBox);

iCnt++;
}

sumRowHeaderLabel.Font = new Font(dgv.DefaultCellStyle.Font, SumRowHeaderTextBold ? FontStyle.Bold : FontStyle.Regular);
sumRowHeaderLabel.Anchor = AnchorStyles.Left;
sumRowHeaderLabel.TextAlign = ContentAlignment.MiddleRight;
sumRowHeaderLabel.Height = this.Height;
sumRowHeaderLabel.Width = dgv.RowHeadersWidth;
sumRowHeaderLabel.Top = 0;
sumRowHeaderLabel.Text = DisplaySumRowHeader ? SumRowHeaderText : string.Empty;
sumRowHeaderLabel.ForeColor = dgv.DefaultCellStyle.ForeColor;
sumRowHeaderLabel.Margin = new Padding(0);
sumRowHeaderLabel.Padding = new Padding(0);
this.Controls.Add(sumRowHeaderLabel);
calcSummaries();
resizeSumBoxes();
}

/// <summary>
/// Order the columns in the way they are displayed
/// </summary>
private List<DataGridViewColumn> SortedColumns
{
get
{
List<DataGridViewColumn> result = new List<DataGridViewColumn>();
DataGridViewColumn column = dgv.Columns.GetFirstColumn(DataGridViewElementStates.None);
if (column == null)
{
return result;
}
result.Add(column);
while ((column = dgv.Columns.GetNextColumn(column, DataGridViewElementStates.None, DataGridViewElementStates.None)) != null)
{
result.Add(column);
}

return result;
}
}

/// <summary>
/// Resize the summary Boxes depending on the
/// width of the Columns of the DataGridView
/// </summary>
private void resizeSumBoxes()
{
try
{
this.SuspendLayout();
if (sumBoxHash != null && sumBoxHash.Count > 0)
try
{
int rowHeaderWidth = dgv.RowHeadersVisible ? dgv.RowHeadersWidth - 1 : 0;
int sumLabelWidth = dgv.RowHeadersVisible ? dgv.RowHeadersWidth - 1 : 0;
int curPos = rowHeaderWidth;

if (DisplaySumRowHeader && sumLabelWidth > 0)
{
sumRowHeaderLabel.Visible = true;
sumRowHeaderLabel.Width = sumLabelWidth;
if (dgv.RightToLeft == RightToLeft.Yes)
{
if (sumRowHeaderLabel.Dock != DockStyle.Right)
{
sumRowHeaderLabel.Dock = DockStyle.Right;
}
}
else
{
if (sumRowHeaderLabel.Dock != DockStyle.Left)
{
sumRowHeaderLabel.Dock = DockStyle.Left;
}
}
}
else
{
if (sumRowHeaderLabel.Visible)
{
sumRowHeaderLabel.Visible = false;
}
}

int iCnt = 0;
Rectangle oldBounds;

foreach (DataGridViewColumn dgvColumn in SortedColumns)
{
ReadOnlyTextBox sumBox = (ReadOnlyTextBox)sumBoxHash[dgvColumn];
if (sumBox != null)
{
oldBounds = sumBox.Bounds;
if (!dgvColumn.Visible)
{
sumBox.Visible = false;
continue;
}
 

int from = dgvColumn.Frozen ? curPos : curPos - dgv.HorizontalScrollingOffset;

int width = dgvColumn.Width + (iCnt == 0 ? 0 : 0);

if (from < rowHeaderWidth)
{
width -= rowHeaderWidth - from;
from = rowHeaderWidth;
}

if (from + width > this.Width)
{
width = this.Width - from;
}

if (width < 4)
{
if (sumBox.Visible)
{
sumBox.Visible = false;
}
}
else
{
if (this.RightToLeft == RightToLeft.Yes)
{
from = this.Width - from - width;
}
 

if (sumBox.Left != from || sumBox.Width != width)
{
sumBox.SetBounds(from, 0, width, 0, BoundsSpecified.X | BoundsSpecified.Width);
}

if (!sumBox.Visible)
{
sumBox.Visible = true;
}
}

curPos += dgvColumn.Width + (iCnt == 0 ? 0 : 0);
if (oldBounds != sumBox.Bounds)
{
sumBox.Invalidate();
}
}
iCnt++;
}
}
finally
{
this.ResumeLayout();
}
}
#if (DEBUG)
catch (Exception ee)
{
MessageBox.Show(ee.ToString());
System.Diagnostics.Debug.WriteLine(ee.ToString());
}

#else
catch
{ }
#endif
}

#endregion

#region 事件處理程序
void dgv_DataSourceChanged(object sender, EventArgs e)
{
calcSummaries();
}
private void dgv_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
ReadOnlyTextBox roTextBox = (ReadOnlyTextBox)sumBoxHash[dgv.Columns[e.ColumnIndex]];
if (roTextBox != null)
{
if (roTextBox.IsSummary)
{
calcSummaries();
}
}
}
private void dgv_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
{
calcSummaries();
}
private void dgv_RowsRemoved(object sender, DataGridViewRowsRemovedEventArgs e)
{
calcSummaries();
}

private void dgv_ColumnDisplayIndexChanged(object sender, DataGridViewColumnEventArgs e)
{
//resizeSumBoxes();
reCreateSumBoxes();
}
private void dgv_ColumnStateChanged(object sender, DataGridViewColumnStateChangedEventArgs e)
{
resizeSumBoxes();
}
private void dgv_Scroll(object sender, ScrollEventArgs e)
{
resizeSumBoxes();
}
private void dgv_ColumnWidthChanged(object sender, DataGridViewColumnEventArgs e)
{
resizeSumBoxes();
}
private void dgv_RowHeadersWidthChanged(object sender, EventArgs e)
{
int columnsWidth = 0;
for (int iCnt = 0; iCnt < dgv.Columns.Count; iCnt++)
{
if (dgv.Columns[iCnt].Visible)
{
if (dgv.Columns[iCnt].AutoSizeMode == DataGridViewAutoSizeColumnMode.Fill)
{
columnsWidth += dgv.Columns[iCnt].MinimumWidth;
}
else
columnsWidth += dgv.Columns[iCnt].Width;
}
}
this.Width = columnsWidth;
resizeSumBoxes();
}

protected override void OnResize(EventArgs e)
{
base.OnResize(e);
resizeSumBoxes();
}
private void dgv_Resize(object sender, EventArgs e)
{
adjustSumControlToGrid();

resizeSumBoxes();
}
private void adjustSumControlToGrid()
{
ScrollBar horizontalScrollBar = (ScrollBar)typeof(DataGridView).GetProperty("HorizontalScrollBar", BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance).GetValue(dgv, null);
ScrollBar verticalScrollBar = (ScrollBar)typeof(DataGridView).GetProperty("VerticalScrollBar", BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance).GetValue(dgv, null);
 

if (horizontalScrollBar.Visible)
{
this.Top = dgv.Height - this.Height - horizontalScrollBar.Height;
}
else
{
this.Top = dgv.Height - this.Height;
}
this.Left = dgv.Left;
if (verticalScrollBar.Visible)
{
this.Width = dgv.Width - verticalScrollBar.Width;
}
else
{
this.Width = dgv.Width;
}
}
 

private void dgv_ColumnRemoved(object sender, DataGridViewColumnEventArgs e)
{
reCreateSumBoxes();
}
private void dgv_ColumnAdded(object sender, DataGridViewColumnEventArgs e)
{
reCreateSumBoxes();
}
#endregion
}
internal partial class ReadOnlyTextBox : Control
{

StringFormat format;
public ReadOnlyTextBox()
{
InitializeComponent();

format = new StringFormat( StringFormatFlags.NoWrap | StringFormatFlags.FitBlackBox | StringFormatFlags.MeasureTrailingSpaces);
format.LineAlignment = StringAlignment.Center;

this.Height = 10;
this.Width = 10;

this.Padding = new Padding(2);
}

public ReadOnlyTextBox(IContainer container)
{
container.Add(this);
InitializeComponent();

this.TextChanged += new EventHandler(ReadOnlyTextBox_TextChanged);
}

private void ReadOnlyTextBox_TextChanged(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(formatString) && !string.IsNullOrEmpty(Text))
{
Text = string.Format(formatString, Text);
}
}

private Color borderColor = Color.Black;

private bool isSummary;
public bool IsSummary
{
get { return isSummary; }
set { isSummary = value; }
}

private bool isLastColumn;
public bool IsLastColumn
{
get { return isLastColumn; }
set { isLastColumn = value; }
}

private string formatString;
public string FormatString
{
get { return formatString; }
set { formatString = value; }
}
 

private HorizontalAlignment textAlign = HorizontalAlignment.Left;
[DefaultValue(HorizontalAlignment.Left)]
public HorizontalAlignment TextAlign
{
get { return textAlign; }
set
{
textAlign = value;
setFormatFlags();
}
}

private StringTrimming trimming = StringTrimming.None;
[DefaultValue(StringTrimming.None)]
public StringTrimming Trimming
{
get { return trimming; }
set
{
trimming = value;
setFormatFlags();
}
}

private void setFormatFlags()
{
format.Alignment = TextHelper.TranslateAligment(TextAlign);
format.Trimming = trimming;
}

public Color BorderColor
{
get { return borderColor; }
set { borderColor = value; }
}

protected override void OnPaint(PaintEventArgs e)
{
int subWidth = 0;
Rectangle textBounds;

if (!string.IsNullOrEmpty(formatString) && !string.IsNullOrEmpty(Text))
{
Text = String.Format("{0:" + formatString + "}", Convert.ToDecimal(Text));
}

textBounds = new Rectangle(this.ClientRectangle.X + 2, this.ClientRectangle.Y + 2, this.ClientRectangle.Width - 2 , this.ClientRectangle.Height - 2 );
using(Pen pen = new Pen(borderColor))
{
if (isLastColumn)
subWidth = 1;

e.Graphics.FillRectangle(new SolidBrush(this.BackColor), this.ClientRectangle);
e.Graphics.DrawRectangle(pen, this.ClientRectangle.X, this.ClientRectangle.Y, this.ClientRectangle.Width - subWidth , this.ClientRectangle.Height - 1);
e.Graphics.DrawString(Text, Font, Brushes.Black, textBounds , format );
}
}
}
internal static class TextHelper
{
public static StringAlignment TranslateAligment(HorizontalAlignment aligment)
{
if (aligment == HorizontalAlignment.Left)
return StringAlignment.Near;
else if (aligment == HorizontalAlignment.Right)
return StringAlignment.Far;
else
return StringAlignment.Center;
}

public static HorizontalAlignment TranslateGridColumnAligment(DataGridViewContentAlignment aligment)
{
if (aligment == DataGridViewContentAlignment.BottomLeft || aligment == DataGridViewContentAlignment.MiddleLeft || aligment == DataGridViewContentAlignment.TopLeft)
return HorizontalAlignment.Left;
else if (aligment == DataGridViewContentAlignment.BottomRight || aligment == DataGridViewContentAlignment.MiddleRight || aligment == DataGridViewContentAlignment.TopRight )
return HorizontalAlignment.Right;
else
return HorizontalAlignment.Center;
}

public static TextFormatFlags TranslateAligmentToFlag(HorizontalAlignment aligment)
{
if (aligment == HorizontalAlignment.Left)
return TextFormatFlags.Left;
else if (aligment == HorizontalAlignment.Right)
return TextFormatFlags.Right;
else
return TextFormatFlags.HorizontalCenter;
}

public static TextFormatFlags TranslateTrimmingToFlag(StringTrimming trimming)
{
if (trimming == StringTrimming.EllipsisCharacter)
return TextFormatFlags.EndEllipsis;
else if (trimming == StringTrimming.EllipsisPath)
return TextFormatFlags.PathEllipsis;
if (trimming == StringTrimming.EllipsisWord)
return TextFormatFlags.WordEllipsis;
if (trimming == StringTrimming.Word)
return TextFormatFlags.WordBreak;
else
return TextFormatFlags.Default;
}
}
 


標簽:

本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn

文章轉載自:博客轉載

為你推薦

  • 推薦視頻
  • 推薦活動
  • 推薦產品
  • 推薦文章
  • 慧都慧問
掃碼咨詢


添加微信 立即咨詢

電話咨詢

客服熱線
023-68661681

TOP
日韩国产精品欧美一区二区 | aqd安全检测 | 亚洲伊人精品国产91综合 | 亚洲国产精品日韩在线观看 | 欧美亚洲国产日本黑白 | 国精产品999国精产 三三电影网 | 俺去啦俺来也五月天 | 欧美成精品视频在线观看 | 女性一级全黄生活片在线播放 | 日韩精品电影一区亚洲高清 | 午夜影院c绿象 | 亚洲图片偷拍视频区 | 日本中文字幕免费 | 精品视频69v精品视频 | 日韩亚洲欧美精品综合 | 欧美性受xxxx | 国产国产人免费人成免 | 国产精品52在线观 | 亚洲欧美suv精品 | 国产日韩亚洲欧美第一区 | 婷婷国产99在线观看 | 国语自产偷拍精品视频偷97 | 欧美日韩免费精品一区二区在线 | 日本不无在线一区二区三区 | 草草视频手机在线观看视频 | 国产jjizz女 黄频国产免费观看 | 国产欧色美视频综合二区 | а√天堂资源在线官网 | 传媒免费在线播放 | 欧美日韩中文亚洲v在线综合 | 免费高清的在线电影院 | 成人91污污污在线观看 | 息与子猛烈交尾在线播放 | 韩国免费一级a一片 | 找老女人泻火 | 成人福利国产精品视频 | 岛国大片一区二区三区 | 国产精品美脚玉足在线 | 日本亚洲视频在线不卡免费 | 欧美精品三区 | 18国产精品福利片免费看 | 精品免费观在线国产 | 一区二区免费 | 欧美日韩一区二区成人午夜电影网 | 日本va在线视频播放 | 国产噜噜噜精品免费视频 | 国产精品网国产播放视频 | 国产日韩一区二区精品在线播放 | 国产中文欧美日韩在线 | 亚洲日韩欧美一区二区三区在线 | 国产亚洲精品片a77777 | 国产中文另类二区 | 成人午夜影院网站 | 综合欧美国产视频二区 | 精品国产乱码一区二区三区99 | 亚洲日本在线不卡 | 99国产精品一区二区含羞草 | 自产拍在线观看 | 国产精品三p一区二区视频 一区二区国产高清视频在线 | 国产激情国语对白 | 亚洲码专区亚洲码专区 | 国产真实乱xxxⅹ | 精品国产欧美一区二区最新 | 国产午夜福利不卡在线观看 | 国产微拍精品一区大全 | 国偷自产在线观看 | 国产精品黄大片在线播放 | 国产精品免 | 国产精品丝袜拍在线观看 | 免费观看一级特黄欧 | 精品国产ⅴ | 国产日韩精品一区二区在线观看 | 成人精品视频一区二区 | 五月婷婷六月丁香 | 欧美精品人爱a欧美精品 | 亚洲熟女www一区二区三区 | 99精品自拍偷拍一区二区 | 亚洲欧美日韩另类中文字幕组 | 日本精a在线观看 | 亚洲色成人影院在线观看 | 精品午夜在线视频观看 | 国产免费福利影院 | 日韩在线视看高清视频手机 | 国产乱码精品在线播放 | 国产精品偷伦视频免费手机播 | 国产一级a在线观看免费 | 亚洲日本中文字幕天天更新 | 国产欧美v欧美v在观看 | 精品综合色 | 欧美巨大精品欧美一区二区 | 国产一二三区在线播放 | 精品熟人| 亚洲国产区男人本色vr | 国产日韩欧美一级视频在线观看 | 欧亚a级一级 | 国产小比孩网站 | 国产乱伦网站国 | 99精品国产高清自在线看超 | 日本在线免费 | 欧美日韩亚洲成色二本道三区 | 亚洲日韩国产一区二区三区在线 | 精品国产污污免费网站入口在线 | 国产熟女一 | 亚洲欧美日韩综合aⅴ | 精品国产人成亚 | 国产精品亚洲综合第一区 | 欧美日产欧美日产国产精品 | 日本在线一区二区三区观看 | 精品国产乱伦一区二区三区 | 国产噜噜 | 99re6在线视频精品免费 | 国产尤物亚洲精品不卡 | 成人精品视频一区二区三区不卡 | 国产免费直播在线观看视频 | 成人a∨电影天堂 | 久插视频 | 国产欧美日韩精品二区在线 | ⅹxx欧美 | 日本高清中文字幕一区二区三区 | 日韩高清在线日韩视一区 | 8090午夜福利理论影视 | 银杏在线app | 91最新人成在线观看 | 青青草中国三 | 日本乱码伦视频中文字 | 国产午夜视频在永久在线观看 | 国产精品91一区二区三区四区 | 91精品国产色综 | 国产日产韩国精品视频 | 国产aⅴ无 | 亚洲人成激情在线播放 | 中文字幕在线观看一区二区 | 成人免费观看高清视频a斤 九九精品视频一区二区三区 | 日本爽爽爽爽爽爽免费视频 | 国产女主播在线观看 | 国产按摩院在线网站 | 国色天香社区视频免费观看 | 日本最新在线观 | 日韩精品一区二区三区中文在线 | 99re视频热这里只有精品7 | 日韩在线一区卜 | 日韩精品中文字幕第1页 | 国产东北肥熟老胖女 | 大地资源中文在线观看官网第二页 | 91精品国产自在现偷 | 日本高清中文字幕在线dvd | 性欧美日韩| 国产香蕉尹人视频在 | 国产精产国品一二三在观看 | 一边喂奶一边被爱 | 亚洲va在线va天堂va在线 | 中文字幕一区二区三区免费看 | 亚洲人成色4444在线观看 | 国产国产乱老熟视频网站 | 国产草莓社区在线观看 | 日韩一本二本在线观看视频 | 91短视频版高清下载 | 麻花传媒免费网站在线观看 | 欧美日韩视频网站 | 亚洲中文字幕一区二区三区 | 人禽伦免费视 | 国产在线精品一区二区三区精品 | 日本留學代辦 | 羞羞视频网 | 伊人色综合一区二区三区 | 欧美激情精 | 91国在线啪精品一区 | 蜜汁娇妻有点甜全文阅读 | 在线观看国产日韩欧美 | 日本欧美一区二区 | 国产精在线 | 亚洲au秘一区二区三区 | 日韩在线视频一区二区三区四 | 黄页网站大全免费视频网站 | 国产亚洲精品成人a在线 | 欧美乱妇激情在线播 | 92午夜福利国产精品 | 欧美一区二区三区在线直播 | 久青草视频在线婷婷 | 欧美日韩国产精品 | 99视频在线看观免费 | 国产一级一片免费播放放 | 中文字幕三级 | 国产系列| 亚洲愉拍国产自免费 | 日韩中文一区二区三区 | 日韩video深爱激情五月亚 | 亚洲老女人精品老妇女 | 私人情侣影院在线电影院 | 欧美五级在线观看视频播放 | 一级a毛免费视频在线 | 日本老妇人乱xxy | 欧美日韩亚洲综合一区二三激情 | 欧美国产日韩福利 | 成年轻人网站免费视频 | 男女爽爽爽视频免费网站 | 日本一区免费在线 | 日韩中文精品 | 日韩中文高清在线 | 欧美有色 | 精品自拍网友区在线观看 | 欧美1卡一卡二卡三新区 | 精品免费囯产一区二区三区四 | 不卡一卡二卡三乱码免费网站 | 最近免费字幕中文大全 | 午夜福利一区在线 | 777午夜精 | 日韩欧美一二区 | 国产激动情五月天 | 国产精品宾馆精品酒店 | 国产午夜福利院在 | 在线永久观看视频网站免费 | 欧美日韩一区二区三区在线视频 | 国产在线精品一区二区中文 | 国产亚洲这里只有精品 | 日本韩国欧美午夜 | 国产制服精品一区二区视色 | 欧美日韩中文字幕国产 | 精品国产福利第一区二 | 国产清纯| 蜜桃传媒视频 | 亚洲精品国自产拍在线观看 | 日本中文字幕有码在线视频 | 亚洲v乱码专区国产乱码 | 男人靠女人免费视频网站 | 欧美性爱视频手机在线免费播放 | 不卡福利| 国产亚洲欧洲精品 | 亚洲精品在线免费观看 | 三级三级三级a级全黄三 | 欧美日韩中文在线视频 | 国产啪精品视频免费网站 | 欧美区一区二区三 | 国产啪精品视频网站免费尤物 | 精品自拍视频400部 亚洲日韩v | 日韩草莓视频一区二区在线 | 国产日韩综合一区在线观看 | 男人的天堂co | 国产精品国语刺激对白在线观看 | 国产精品亚洲精品五月 | 亚洲国产不卡一区二区三区 | 成全视频观看免费高清第6季 | 最新中文字幕第一页 | 国产在线精选视频免费 | 在线观看中文字幕码 | 精品亚洲a∨| 亚洲国产欧美在线观看片不卡 | 亚洲精品一区二区三区在 | 欧美美女视频一区二区三区 | 日韩精品区一区二区三vr | 手机午夜福利1000视频 | 国产区精品区 | 国产99视频在线观看 | 日本免费人成在线网站 | 免费午夜伦费影视在线观看 | 亚洲激精日韩激情欧美激 | 成人高辣h视频一区二区在线 | 欧美日韩国产免费一区二区三区 | 免费在线观看网址入口 | 欧美日韩中文字幕国产 | 国产精品永久在线观看 | 菠萝视频免费最新在线观看 | 免费人成再在线观看视频 | 亚洲天堂精品在线观看 | 日韩亚洲欧美变态另类 | 国产午夜亚洲精品国产 | 一级特黄h厂视频网站 | 日本一本为道高清视频 | 日产日韩在线亚洲欧 | 欧美日韩免费播 | 欧美日韩中文字幕免费看 | 日韩国产亚洲精品制服另类 | 国产aⅴ一区二区 | 玖玖源资源站中文字幕一区二 | 国产自产拍精品视频免 | 精品免费国产影视 | 日韩亚色五月 | 午夜视频免费在线观看 | 自产国产一区二区 | 欧美性xxxxx极品娇小 | 欧美成aⅴ人高清免费观看 亚洲成a人片在线v 国产日韩传媒一区二区三区四区 | 欧美性爱中文字幕无 | 日韩在线中文字幕一区 | 国产盗摄视频在线 | 免费高清乱伦欧美 | 国产精品三级国产电影 | 国产精品欧美一区 | 五月天久 | 精品视频一区二区三三区四区 | aⅴ不卡国产在线观看 | 国产资源在线视 | 欧美伦理一区二区三区 | 免费精品日本 | 欧美特黄美女视频插 | 91偷拍一区二区三区精品 | 成人午夜网站在线观看视频 | 国产在线观看免费视频 | 精品国产午夜肉伦 | 中文字幕亚洲综合小综合 | 色吊丝中文字幕 | 国产99视频在线观看免费 | 欧美三级在线播放 | 日韩伦理电影大全 | 亚洲欧美国产日产综合不卡 | 靠逼视频一区二区三区 | 国产区日韩精品一区二区三区 | 精品乱伦影视 | 日韩一区二区三区免费看 | 91国内揄拍国内精 | 看黑人巨大精品欧美一区 | 国产精品福利电影一区二区三 | 欧美精品爆操白虎 | 精品视频在线三区 | 奶水国产在线播放 | 日本一丰满一bbw | 永远免费观看 | 日韩在线看片中文字幕不卡 | 亚洲欧美高清精 | 最新国产一区二 | 国产熟女一区二区视频 | 免费99精品国产自在现 | a级日本乱理伦片 | 国产亚洲欧美在线 | 成人国产精品秘在线观看免费 | 国产欧美一级精品 | 亚洲欧美在线观看 | 亚洲午夜视频在线观看 | 日本一本之道 | 国产高清不卡v清免 | 欧美性xxxxx极品 | 在线观看午夜福利院视频 | 日韩视频第二页 | 中文一区二区 | 欧美日韩国产综合一区二区三区 | 日本高清免费 | 欧美亚洲日韩美女在线 | 亚洲天堂色在线 | 精品国内一区二区三区免费视频 | 亚洲日本在线中文字幕 | 国产偷国产偷亚 | 欧美日韩在线图片一区 | 精品国产美| 欧美与黑人午夜性猛交 | 国产日韩一二三四区 | 欧美黑人巨大激情视频在线观看 | 日本女优中文字幕 | 成人3d动漫在线观看网站 | 国产女主播精品 | 国产欧美日韩一区二区三区蜜桃 | 秋霞影院伦理在线看 | 亚洲欧美日韩高清综合678 | 国产偷国产偷亚州清高app | 成人精品一区二区三四 | 国产精品自在拍在线播放 | 亚洲线精品一区二区三区四区 | 日本一区二区视频在线观看 | 老司机app色版下载 无人在线观看高清视频 | 欧美96 | 国产综合久 | 国产费视频在线观看 | 国产香蕉人在线播放视频网站 | 国产一区二区视频在线播放 | 国产免费怡红院视频 | 国产一级淫片a免 | 久精品视频 | 成人国产99视频在线观看 | 国产日韩欧美拔插一区 | 日产精品一卡2卡三卡4乱码 | 免费ā片在线观看 | 99热这里只有精品4 永久免费老妇女 | 日韩欧美视频一区二区 | 国精产品一线二线三线网站 | 色一乱一伦一 | 99热国产这里只有精品 | 国产精品成人亚发布 | 91熟女| 国产揄拍视频在线观看激情 | 成人看片黄a免费看 | 野花免费高 | 日韩在线精品一区二区三区 | 免费看成人国产一区二区 | 亚洲成a人片在线观看日本 免费一级中文 | 欧美a级v片在线观看 | 欧美午夜片在线观看震撼 | 亚洲欧美极品 | 秒拍视频 | 精品伊人网 | 国产午夜福利片一区在线观看 | 亚洲免费视频一区二区 | 亚欧洲精品在线视频免费观看 | 欧美高清在线精品一 | 国产精品一区一区三区mba | 日本中文字幕乱码视频在线 | 又污又爽又黄的网站 | 偷拍美女厕所 | 91福利国产在线人成观看 | 伦理片在线线手机版韩国免费6 | 国产91成人超清在线 | 精品国产亚洲国 | 伊伊人成亚洲综合人网7777 | 国产午夜手 | 日本欧美在线播放中文字幕 | 国产最爽乱淫视频国语对白 | 色橹橹欧美在线观看视频高 | 精品一区二区三区视频日产 | 国产成在线观看免费视频 | 愉拍自拍另类高清 | 懂色aⅴ精品一区二区三区蜜月 | 欧美高清性xxxxhd | 人伦小说视频在线 | 男人猛进猛出女人屁股视频 | 亚洲欧美日韩一区超高清 | 老司机深夜影院入口aaaa | 精品国产高清免费在线观看 | 自拍三级综合影视 | 日产美产国产一区 | 男女交性永久免费视频播放 | 国产精品果冻传媒在线 | 亚洲高清中文字幕 | 巨胸美女爆免费网站软件 | 国产欧美日韩电影在线观看 | 亚洲一区二区三区影院 | 91精品成人免费国产 | 日韩欧美精品视频在线观看 | 日韩丝袜精品二区免费视频 | 久青草影院 | 手机韩剧天天更新韩剧免费看 | 日韩免费一区二区三区中文字幕 | 国产1区 | 亚洲第一性网 | 亚洲精品三级 | 日韩欧美中文字幕1页 | 大地资源在线观看免费中文版 | 在线日本看片免费人成视久网 | 欧美在线三级艳情网站 | 日韩精品一区二区三区乱码 | 国自产精品手机在线观看视 | 国产日本在线观看网址 | 欧美日日日 | 欧美二区视频 | 国产精品免费一级高清 | 国产精品日 | 免费视频播放a | bt天堂国产狂喷潮在线观看 | 亚洲综合专区 | 小蝌蚪日韩国产高清影片 | 国产老熟女aⅴ | 草草视频手机在线观看视频 | 午夜福利1000集在线观看 | 精品日本永久免费网站 | 无限资源最| 国产激情久 | 日本一本之道之视频在线不卡 | 国产免费一区二区三区免费视频 | 91干逼网| 日韩精品一线二线 | 大地资源中文第二页高清 | 国产chinesehdxxxx| 精品亚洲日韩国产一二三区 | 欧美精品国产制服第一页 | 国产在线观看视频 | 97视频在线观看这里只有精品 | v中文字幕网 | 欧美日本一区二区三区道 | 亚洲欧美日韩在线一区 | 手机国产视频福利 | 女同另类国产精品视频 | 日韩综合一区 | 久爱免费观看在线网站 | 香港三级理论在 | 囯产免费一区二区三区在线播放 | 成人看片在线观看免费 | 日韩电影欧美综合在线 | 精品一区二区6 | 欧美精品国产制服一区 | 午夜福利电影 | 欧洲女人性开放视频过性 | 午夜dj免费视频在线观看 | 国产人成77777视频网站 | 永久免费提 | 蜜柚视频在线观看免费完整 | 国产99视频精品免费视频6 | 欧美一区二区 | 欧美一级aaaaa免费高清 | 国产视频这里只有精品 | 欧美日韩一区二区三区高清在线 | 岛国大片在线观看免费版 | 国产黄页网址大全免费 | h片在线播放免费高清 | 国产亚洲精品综 | 亚洲国产一区二区午夜福利 | 国产精美视频 | 最近中文字幕2025 | 欧美一区二区三区在线播放 | 国产精品码一区二区密挑 | 日韩欧美精品一区二区在 | 果冻传媒 | 国产办公室沙发系列 | 欧美曰韩一区二区三区 | 又污又爽无 | 亚洲国产精品ⅴa在线观看 免费vip电影电视剧 | 乱子伦一| 国产在线精品观看一区欧美 | 国产精品一卡 | 国产日韩精品一区二区在线播放 | 欧美日韩亚洲一区二区三区 | 国产色综合 | 欧美日韩国产乱了伦 | 成人伊人222 | 国产精品一区二区在线看 | 日韩欧美亚洲一中文字暮 | 五福临门电视剧免费观看完整 | 尹人香蕉久 | 日韩一区在线观看免费观看免费 | 欧美日韩日本一区 | 亚洲成在人线影视天堂网 | 大色综合色综合网站 | 白拍国产永久免费视频 | 日本名勝景點推薦 | 欧美综合国产精品日韩一 | 成全视频 | 欧美日韩视频 | 欧美日韩视频免费播放 | 免费国产在线精品二区 | 日韩国产精品一区二 | 国产乡下妇女三片 | 国产精品久片 | 国产精品网站不卡在线观看 | 国产日韩在线视看高清视频手机 | 视频一区二区自产在线 | 九九精品一 | 国产又色又爽又黄刺激91 | 亚洲日韩一区二区 | 好吊色妇女免费视频免费 | 在线观看视频一区精 | 国产国产乱老熟视频网站 | 黑巨茎大战俄罗斯美 | 风流老熟女一区二区三区 | 国产青草视频在线观看免费影院 | 日韩综合第一页 | 99国产精品一区二区含羞草 | 中文字幕永久一区二区三区 | 国产特黄精品一区二区在线 | 玖玖玖视频在线观看视频6 日韩精品搭讪在线视频播放 | 日韩高清在线一区二区婷婷 | 成人亚欧 | 欧美色综合卡一卡二 | 人妖ts国产手机在线 | 国产制服丝袜你 | 国产小嫩货视频在线观看 | 精品成人一区二区三区免费视频 | 欧洲一卡2卡三卡四卡高清 国产舌乚八伦偷 | 亚洲精品高清在线观看 | 亚洲精品国产精品国自产网站 | 国产精品福利在线观看一区 | 99国产精品9 | 日韩视频中文字暮 | 最新电影电视剧短剧大全 | 国色天香在线观看 | 无人区一码二码三码区别 | 国产欧美综合系列在线 | 亚洲国产综合另类视频在线观看 | 在线看一区二区中 | 字幕乱码一二三四 | 二区三在线播放 | 中文字幕在线观看日本 | 芙宁娜裸身被羞羞漫画 | 亚洲精品sm一区二区 | 男生j桶进女人p又色又爽又黄 | 日韩在线精品国产亚洲欧美 | 女人靠逼视频不卡的 | 国产极品高颜值美女在线 | 亚洲中文欧美日韩在线 | 国产ⅴa免费精品高清在线 欧美日韩免费高清一区二区 | 亚洲精品影院一区二区 | 日韩高清一区二区三区中文字 | 亚洲精品区m | 国产在线青青 | 91视频这里只有精品 | 91欧美日韩91桃色在线观看 | 国产亚洲高清在线精品不卡 | 成人看片黄a免费看在线 | 国产欧美视频一区二区三区 | 麻花天美星空果冻 | 国产精品制服丝 | 精品一区二区三区三区 | 一本一道久 | 性色a∨人人 | 日本中文在 | 日本黄本道一区二区在线观看 | 欧美人成在线观 | 国产很色很黄很大爽的视频 | 国产高清视频免费在线观看 | 国产精品欧美电影 | 综合一区二区三区激情在线 | 亚洲欧美人成在线视频 | 60分钟床色大片在线观看免费 | 欧美日韩国产一区二区三区伦 | 国产亚洲精爱浪 | 日本高清不卡中文字幕 | 乱色熟女综合一 | 玖玖玖免费观看视频 | 成视频在线播放免费人成 | 日本亚洲视频在线不卡免费 | 日韩视频网站在线观看 | 国产欧美一v精品 | 欧美中文字幕在线第一页 | 日久精品不卡一区 | 日本性色 | 国产精品亚洲日韩欧美在线观看 | 欧美特一级| 老师脱了内裤让我进去 | 日本精产品久观看视频下站 | 欧美日韩一区二区在线 | 日韩欧美国产精品免费一二 | 国产精品观看 | 免费午夜伦费影视在线观看 | 亚洲午夜福利院在线观看 | 国产性爱在线 | 中文字幕精品视频在线观看 | 国产精品免费一区二区三区视频 | 欧美xx | 国语在线看免费观 | 色妺妺在线视频喷水 | 欧洲亚洲精品a | 国产在线视频福利资源站 | 国产门事件真实视频在线 | 免费人成网上在线观看 | 欧美精品九九9 | 亚洲一区二区三区精品动漫 | 国产在线观看精品一区二区三 | 国产又爽又色又刺激视频含羞草 | 在线观看国产日韩欧美 | 国产激爽大片高清在线观看 | 国产系列 | 国产欧美日本亚洲精品五区 | 国产主播专区 | 国产一区二区三区福利 | 女同一级毛 | 欧美日女人b视频网 | 中文字幕精品乱码亚洲一区 | 日韩欧美另类亚洲 | 又色又爽又 | 96福利国产在线 | 999在线视 | 成人看片| 国产精品自线在线播放 | 国产理论高清一卡二卡三卡 | 亚洲一区二区三区在线 | 亚洲人成网站在线观看 | 日本免费一区二区视频 | 亚洲国产精品午夜伦不卡 | 欧美日韩一区高清在线观看 | 欧美日韩中文字幕第一页 | 成人一级淫妇视频 | 激情婷婷| 国产拍偷 | 亚洲人成电影手机在线网站 | 亚洲精品在看在线观看高清 | 欧美又大粗又爽又黄大片视 | 中日韩无砖码一线二线 | 精品日韩女仆在线观看不卡 | 亚洲成熟女人毛毛耸耸多 | 国产在线精品一区二区高清不卡 | 精品乱码一区二区三四区视频 | 国产综合视频在线观看 | 国产公妇仑在线观看 | 国产午夜免费视频 | 日本xx | 国产美女爽到喷出水来视频 | 亚洲人成电影院在线观看 | 精品国产一区二区三区香蕉欧美 | 热门电视剧追剧网站 | 成年人午夜免费福利 | 免费高清影视资源 | 日韩中文字幕精品一区 | 国产乱妇乱子在线播放视频 | 日韩中文字幕国产一区在 | 欧美日韩高清不卡 | 91精品啪aⅴ在线观看国产 | 国产理论| 国产又黄又爽视频免费观 | 国产夫妻性生活视频 | 国产一区私人高清影院 | 日韩亚洲国产激情在线观看 | 成人国产亚洲精品a区天堂 青青草原国产在 | 日韩精品一区二区三线 | 亚洲色成人中文字幕网站 | 免费无人区一码二码乱码区别在哪 | 国产精品亚洲一区在线观看 | 在线播放精品一区二区三区 | 欧美日韩v在线 | 国产69成人午夜福利在线 | 国产+日韩+另类+视频一区 | 日韩在线视频线视频免费 | www.ww黄在线观看 | 日韩免费在线播放一区二区三区 | 日本在线www| 国产一级淫片免费播放 | 国产精品自在线拍国产手机版 | 欧美日韩亚洲视频精品 | 欧美日韩一区二区三区在线播放 | 一级理论片免费观看在线 | 国产精品视区一二二中文字幕 | 国产午夜亚洲精品国产 | 在线欧美日韩亚洲国产一区 | 不卡电影在 | 热门电视剧免费在线观看 | 国产亚洲精品自在线观看 | 国产亚洲欧美高清在线观看 | 国产日韩在线看电影 | 最新亚洲人 | 国产日本卡二卡三卡四卡 | 日韩熟女激情中 | 尤物tv | 国产又色又爽又黄刺激视频 | 日产精品卡二卡三卡四卡区 | 国产区一区二区三区精品 | 欧美日韩免费播放一区二区 | 日a一二女在线播放免费视频 | 国产3344视频在线观看 | 中文国产欧美不卡 | 免费国产最新进精品视频 | 国产日韩精品一区二区三区在线 | 丰满在线观看 | 日韩欧美一及在线播放 | 99精品不卡一区二区三区 | 欧美日韩成人午夜电影 | 国产精一品亚洲二区在线播放 | 亚洲a∨ | 欧美福利 | 二区三在线播放 | 亚洲香蕉中文日韩v日本 | 午夜亚洲一区 | 日韩在线视频第一页 | 国精产品一码一码三mba | 一二三四视频中文成人 | 日韩经典一区 | 国产精品日韩无卡一区二区 | 日韩亚洲欧美中文在线 | 国产欧美制服丝袜 | 日韩午夜理论片中文字幕 | 亚洲高清国产拍精品动图 | 欧美多人顶级午夜寂寞影院 | 丰满大码女优aⅴ在线 | 国产一级婬片a视频免费观看 | 亚洲日韩一区 | 国产精品一区二区手机在线观看 | 日韩综羞羞视频免费网站欧美 | 国产精品9 | 国产一区二区三区在线观看视频 | 精新精新国产自在现 | 亚洲一区二区三区四区在线观看 | 乱伦国产精品日本 | 男人精品一线视频在线观看 | 亚洲中文字幕一区精品自拍 | 欧美精品黑人粗大破除 | aaaa级少 | 免费国产黄频在线观看视频 | 欧美精品免费一区欧 | 日韩欧美激情刺激爽爽影院 | 国产午夜成福利在线观看 | 欧美激情欧美狂野欧美精品免费 | 人妖一区二区在线观看 | www.一区二区三区在线 | 日韩欧美亚洲一区二区在线观看 | 成人三级视频 | 精品国产理论片在线观看 | 精品a在线观看 | 欧美黑人又大又粗xxxⅹ | 同性男男黄h片在线播放网站 | 国产乱码精品一区三上 | 人物桶机免费漫画大全 | a4yy在线播 | 日本一卡2卡三卡4卡网站 | 亚洲高清二区 | 国产美女一级视频 | 在线视频播放 | 成人免费午夜在线观看 | 日本成人频道一区二区三区 | 亚洲中文第一字幕 | 精品国产污污免费网站 | 国产在线观看精品一区二区三 | 日韩伦理亚洲欧美在线 | 日韩欧美国产精品91 | 免费人成视网站在线不卡 | 国产乡下三级全黄三级在线观看 | 男女猛烈啪啦啦啦免费 | 激情五月天深爱网 | 日本中文字幕一本 | 国产午夜激情视频 | 欧美一区在线日韩 | 美女被男人桶到爽免费网站 | 天堂草原电视 | 97电影院免费看电视剧 | 91精品啪在线观 | 三级视频网 | 国产真实伦 | 国产女明星专区视频在线播放 |