 |
|
นับจำนวน array2 จาก ค่าของ Array1 แล้วให้แสดงใน datagridview |
|
 |
|
|
 |
 |
|
Code (VB.NET)
Dim array1() As String = { "1", "Z", "M", "9"}
Dim array2() As String = {"0", "1", "-", "Z", "M", "9", "1", "-", "Z", "M", "9", "1", "1", "1", "1", "1"}
ผมมี array อยู่ 2 ชุด ครับ
จะ count ใน array2 ที่เทียบ จาก array1 ว่ามี กี่ ตัว
และ นำค่าที่ได้มาใส่ datagridview ในรูปแบบนี้
1 | 7
Z | 2
M | 2
9 | 2
ไม่ทราบว่าเขียนยังไงครับ .. เขียนแต่ PHP งงๆ กับ VB.net มาก ว่า จะ นับยังไง
พยายามมา 7 วัน แล้วครับ อิอิ....
Tag : .NET, Win (Windows App), VB.NET, VS 2010 (.NET 4.x), VS 2012 (.NET 4.x), Windows
|
|
 |
 |
 |
 |
Date :
2016-09-24 18:56:10 |
By :
jet_program |
View :
1053 |
Reply :
5 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอดู Code PHP ที่คุณเขียนได้ไหมครับ ผมจะได้เอาแปลง เป็น VB.NET ให้
|
 |
 |
 |
 |
Date :
2016-09-25 16:11:00 |
By :
bigsuntat |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ตอบความคิดเห็นที่ : 1 เขียนโดย : bigsuntat เมื่อวันที่ 2016-09-25 16:11:00
รายละเอียดของการตอบ ::
Code (PHP)
<?php
$array2 = array('1','Z','2','9','1','Z','2','9','1','Z','2','9');
$array1 = array('1','Z','2','9');
foreach($array1 AS $k=>$A1){
foreach($array2 AS $A2){
if($A1 == $A2){
$a[$A1] = $a[$A1]+1;
}
}
}
$T = "<table border='1'>";
$T .= "<tr>";
$T .= "<th>KEY</th>";
$T .= "<th>NUM</th>";
$T .= "</tr>";
foreach($array1 AS $A1){
$T .= "<tr>";
$T .= "<td>".$A1."</td>";
$T .= "<td>".$a[$A1]."</td>";
$T .= "</tr>";
}
$T .="</table>";
echo $T;
?>
KEY NUM
1 3
Z 3
2 3
9 3
<table border='1'><tr><th>KEY</th><th>NUM</th></tr><tr><td>1</td><td>3</td></tr><tr><td>Z</td><td>3</td></tr><tr><td>2</td><td>3</td></tr><tr><td>9</td><td>3</td></tr></table>
|
 |
 |
 |
 |
Date :
2016-09-28 11:01:59 |
By :
jet_program |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ผม ว่า ผมน่าจะได้ละ ถามเอง-ตอบเอง ใช้เวลา 10 วันกว่าๆ โดยประมาณ (คิด + ทำ)
Code (VB.NET)
Dim array1() As String = {"0", "1", "-", "Z", "M", "9"}
Dim array2() As String = {"0", "1", "-", "Z", "M", "9", "1", "-", "Z", "M", "9", "1", "1", "1", "1", "1"}
Dim dt As New DataTable
dt.Columns.Add("BIN")
dt.Columns.Add("QTY")
For Each num In array1
Dim c As Integer = 0
dt.Rows.Add(num)
For Each num2 In array2.ToArray
If num = num2 Then
c = c + 1
End If
Next
dt.Rows(dt.Rows.Count - 1)(1) = c
Next
DataGridView1.DataSource = dt
|
 |
 |
 |
 |
Date :
2016-09-28 11:18:03 |
By :
jet_program |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
สั้นฯ บรรทัดเดียวจบ
Code (VB.NET)
DataGridView1.DataSource = (From a In array2
Where array1.Contains(a)
Group a By Key = a Into Group
Select New With {Key .BIN = Key, Key .QTY = Group.Count}).ToList()
ปล. หัดเขียน LINQ ใช้เวลาประมาณ หายใจเข้า-หายใจออก 10 ครั้ง (เพื่อทบทวนความรู้เดิมของตัวเอง)
|
 |
 |
 |
 |
Date :
2016-10-01 11:10:59 |
By :
หน้าฮี |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Fun โปรแกรมมิ่ง With LINQ
Code (VB.NET)
Dim หอยงาม = From a In array2.Intersect(array1)
Let ชั่วคราว = array2.Count(Function(v) a.Equals(v))
Select New With {.BIN = a, .QTY = ชั่วคราว}
For i As Integer = 0 To หอยงาม.Count - 1
MsgBox(หอยงาม(i).BIN & " นับได้ " & หอยงาม(i).QTY)
Next
DataGridView1.DataSource =หอยงาม.ToList()
ปล. Fun(หอย) with LINQ Good Luck.
|
 |
 |
 |
 |
Date :
2016-10-01 11:58:45 |
By :
หน้าฮี |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|