|
sebuah catatan kecil dari sebuah kehidupan :)
-
Yeahhhh ,, sesuai judul ,, apakah teman – teman pelajar yang berkedudukan di Indonesia ?? dan ingin mem-publish apps teman – teman ke Windows Phone Marketplace ? saya membuka kesempatan untuk membantu rekan – rekan yang menginginkan hal itu .  BIAYA ??? FREE !!! Apa saja yang perlu dipersiapkan ?? Yang perlu teman – teman perhatikan : - Description harus berbahasa Inggris walaupun aplikasi teman – teman menggunakan bahasa Indonesia
- Screenshooot dan Image Lainnya wajib PNG
- Screenshoot wajib hasil dari screenshoot tools pada Emulator
- Screenshoot jangan menampilkan hasil frame counter dan debug number yang secara default akan muncul , untuk mendisablenya : http://msdn.microsoft.com/en-us/library/gg442300(v=vs.92).aspx
- Test aplikasi teman – teman pada dark dan light themes dan pastikan UI teman – teman terlihat dengan nyaman
Are you ready to submit your apps ? just contact me  non students ??? please visit menu Submit Apps in Menu Bar at http://belajarwp7.com 
|
-
Hello all, ini sebenarnya apps yang sudah lama sekali saya bikin, namun dari dulu selalu direject karena masalah bahasa  Fitur : 1 . Read Article Easily from your WP 7 Device 2. Share Article to Social Media in Easily Way 3. Animation in Whats New Section Screenshot :    Next Feature : 1. Save Article to Local Storage 2. Caching, so You Can read Offline The Article  3. ???? Silahkan di Unduh di :  This Apps Developed By Black Pearl Software Selamat Menikmati Rekans …… Mohon maaf kalo masih ada kekurangan  Ada Ide atau kritik ataupun saran ?? silahkan japri ajah ke billy{at}blackpearlsoft{titik}com 
|
-
Hello All, Lama tak bersua ini jadi postingan pertama saya setelah resmi bukan menjadi MSP dan MSP Lead Interim Regional Jawa Barat Lagi . Oke, kali ini kita akan sedikit membahas tentang bagaimana menerjemahkan PDU Code dari USSD Response yang kita terima dari Operator. Kenapa saya membahas ini ? yaps karena sekarang saya sedang bermain dengan AT Command + Modem untuk membuat sebuah SMS Gateway disini saya mencoba mengembangkan dari salah satu Library untuk Platform .Net yaitu ATSMS Library ( Library ini boleh dibilang cukup lengkap, tapi ada salah satu kekurangnnya yaitu kita belum bisa mengirimkan command USSD ) *maaf kalo sudah sedikit jadul .. hahaha  Oke Apa itu USSD ? Menurut Wikipedia, USSD ( Unstructured Supplementary Service Data ) adalah yang protokol digunakan oleh telepon selular GSM untuk berkomunikasi dengan komputer operator selular. USSD dapat digunakan untuk browsing WAP, layanan panggilan balik prabayar, jasa uang mobile, layanan konten berbasis lokasi , dan sebagai bagian dari konfigurasi telepon pada jaringan. Bagaimana bentuk rupa PDU Code ? 07911326040000F0040B911346610089F600002080629 17314080CC8F71D14969741F977FD07  Example : USSD PDU Code : 00500075006C007300610020003500370030003000200073002F006400200032003500410070007200310032002E004E0069006B006D00610074006900200053004D00530020004B006100700061006E00200041006A006100200033003000300053004D0053002C0020003500680072002C002000520070003500720062000A00310020004D00610075000A003200200049006E007400650072006E00650074002F00420042000A003300200050006B0074002000530075007000650072002000480065006D00610074000A003400200050006B00740020004E0065006C0070006F006E000A00350020004B006F006E00740065006E000A003600200049006E0066006F00200052006F0061006D0069006E0067000A003700200049006E0066006F0020004C006100790061006E0061006E000A Apabila diConvert menjadi Text Biasa ( Readable Text ) adalah : Pulsa 5700 s/d 25Apr12.Nikmati SMS Kapan Aja 300SMS, 5hr, Rp5rb 1 Mau 2 Internet/BB 3 Pkt Super Hemat 4 Pkt Nelpon 5 Konten 6 Info Roaming 7 Info Layanan Abrakadabra ,…. berbeda sekali bukan dari kombinasi angka dan huruf begitu diterjemahkan menjadi Kata – kata penunjuk pulsa saya yang sangat sedikit sekali  Oke sekarang Snippet Code yang bisa teman – teman gunakan : ( Code ini tidak saya ciptakan sendiri , saya hanya mengkonversi dari coding Javascript seseorang, menjadi VB.Net) 1: Imports System.Text
2:
3: Public Class USSDDecoder
4: ' USSD USCS2 PDU Decoder By Billy Riantono - Batu Kajang 2012
5:
6: Public Shared Function DecodeUSCS2Text(ByVal s_str_string As String) As String
7: Dim result_prefix As String = ""
8: Dim NewString As String = ""
9: Dim i As Integer
10: For i = 0 To s_str_string.Length - 1
11: If (MakeNum(s_str_string.Substring(i, 1)) <> 16) Then
12: NewString += s_str_string.Substring(i, 1)
13: End If
14: Next
15: s_str_string = NewString
16: Dim i_int_length = s_str_string.Length
17: If (i Mod 2) Then
18: Return "Error : Length is Not Even"
19: End If
20: Dim messageLength = s_str_string.Length / 2
21: Dim buffer = GetUserMessage16(0, s_str_string, messageLength)
22: Return buffer
23: End Function
24: #Region "Private FUnction"
25:
26: Private Shared Function HexToNum(ByVal numbers As String) As String
27: Dim tens = MakeNum(numbers.Substring(0, 1))
28: Dim ones = "0"
29: Dim strNumber As String = Convert.ToString(numbers)
30: If (strNumber.Length > 1) Then
31: ones = MakeNum(numbers.Substring(1, strNumber.Length - 1))
32: End If
33: If (Convert.ToString(ones) = "X") Then
34: Return "00"
35: End If
36: Return Convert.ToString((tens * 16) + (ones * 1))
37: End Function
38: Private Shared Function GetUserMessage16(ByVal skip_char As Integer, ByVal Input As String, ByVal truelength As Integer)
39: Dim smsMessage = ""
40: Dim charCounter As Integer = 0
41: Dim i As Integer = 0
42: While i < Input.Length
43: Dim EndLength1 = i + 2
44: Dim EndLength2 = i + 4
45: Dim hex1 = Input.Substring(i, EndLength1 - i)
46: Dim hex2 = Input.Substring(i + 2, EndLength2 - (i + 2))
47: charCounter += 1
48: If charCounter > skip_char Then
49: smsMessage += "" & Character(Convert.ToInt32(Convert.ToInt32(HexToNum(hex1)) * 256 + Convert.ToInt32(HexToNum(hex2))))
50: End If
51: i = i + 4
52: End While
53: Return smsMessage
54: End Function
55: Private Shared Function Character(ByVal Num As Long, Optional ByVal Special As Integer = 256) As String
56: 'This Function from http://www.freevbcode.com/ShowCode.asp?ID=8541
57: 'Special must not be higher then 256 or lower then 0
58: If Special < 1 Then
59: Num = 1
60: ElseIf Special > 256 Then
61: Num = 256
62: End If
63:
64: 'If passed Num is higher then 255, it keeps subtracting
65: 'the Num by Special(256) until Num becomes legal ASCII number.
66: If Num > 255 Then
67: While Num > 255
68: Num = Num - Special
69: End While
70: End If
71:
72: 'If Num is lower then 0, it keeps adding Special(256)
73: 'until Num becomes legal ASCII number.
74: If Num < 0 Then
75: While Num < 0
76: Num = Num + Special
77: End While
78: End If
79:
80: 'At the end it just passes the Num to Chr() function
81: Return Chr(Num)
82:
83: End Function
84:
85:
86: Private Shared Function MakeNum(ByVal str As String) As Integer
87:
88: If Not (str = "0" Or str = "1" Or str = "2" Or str = "3" Or str = "4" Or str = "5" Or str = "6" Or str = "7" Or str = "8" Or str = "9") Then
89: Select Case UCase(str)
90: Case "A"
91: Return 10
92: Case "B"
93: Return 11
94: Case "C"
95: Return 12
96: Case "D"
97: Return 13
98: Case "E"
99: Return 14
100: Case "F"
101: Return 15
102: Case Else
103: Return 16
104: End Select
105: End If
106: If ((Convert.ToInt32(str) >= 0) And (Convert.ToInt32(str) <= 9)) Then
107: Return Convert.ToInt32(str)
108: End If
109: End Function
110: #End Region
111: End Class
Oke Selamat mencoba rekans 
Cheers 
|
-
Dear All,
Setelah mengalami proses rekruitmen dan screening yang cukup panjang, sekarang kita telah memiliki beberapa nama yang baru.
Berikut ini adalah nama - nama yang selama beberapa bulan kedepan bakal menjadi MSP di Jawa Barat, kenapa beberapa bulan ? ya karena seberapa lamanya nama - nama dibawah ini bakal menyandang status Microsoft Students Partner tergantung dari pribadi masing - masing kembali.
Akhir Kata CONGRATULATION .. and Now, It's Your Time To SHINE !!!!
Regards,
B Billy Riantono
MSP Lead Interim West Java
|
-
Hello teman - teman, ketemu lagi deh ,, hehehe , euhm kali ini saya coba ingin membagikan bagaimana cara sederhana untuk membantu mengamankan ASP Page anda diakses oleh orang yang tidak berwenang dan orang berwenang mengakses halaman dengan cara direct url tanpa melalui login. Euhm , disini kita akan coba menggunakan session. untuk bagaimana cara membuat halaman login bisa lihat postingan saya sebelumnya disini oke Session yang dipakai untuk melakukan penandaan adalah Session["isLogin"]. sekarang codenya :D tambahkan pada halaman aspx anda code berikut ( diletakan pada section head ) : <% Response.Buffer = true; Response.Expires = 0; Response.CacheControl = "no-cache"; %> Code diatas berfungsi untuk mencegah user mengakses halaman yang merupakan cache dari browser :) kemudian tambahkan code berikut pada .aspx.cs teman - teman : letakan pada bagian page_load :) if (!IsPostBack) { if (Session["isLogin"] != null) { Response.Redirect("~/Logout.aspx"); } } tralala udah deh ,, emang sih belum seratus persen aman , tapi setidaknya dapat membantu :D kalo teman - teman ada cara lain atau mungkin lebih simple , minta dunk :D sekian kali ini, semoga bermanfaat :D Cheers
|
-
Setelah semalam Microsoft melakukan WebCast dengan Keynote Steven Sinofsky ( President Windows Division di Microsoft ) tentang preview Windows 8. maka mulai hari ini Windows 8 Developer Preview resmi diluncurkan dan dapat diunduh pada alamat : 
Windows Developer Preview with developer tools English, 64-bit (x64)DOWNLOAD (4.8 GB) Sha 1 hash - 6FE9352FB59F6D0789AF35D1001BD4E4E81E42AF Apa aja yang disertakan di file ISO versi ini :
- 64-bit Windows Developer Preview
- Windows SDK for Metro style apps
- Microsoft Visual Studio 11 Express for Windows Developer Preview
- Microsoft Expression Blend 5 Developer Preview
- 28 Metro style apps including the BUILD Conference app
Windows Developer Preview English, 64-bit (x64)DOWNLOAD (3.6 GB) Sha 1 hash – 79DBF235FD49F5C1C8F8C04E24BDE6E1D04DA1E9 file (.iso) yang dapat digunakan untuk install Windows Developer Preview and Metro style apps di PC 64-bit. Windows Developer Preview English, 32-bit (x86)DOWNLOAD (2.8 GB) Sha 1 hash - 4E0698BBABE01ED27582C9FC16AD21C4422913CC file (.iso) yang dapat digunakan untuk install Windows Developer Preview and Metro style apps di PC 32-bit. Untuk System Requirement tidak jauh beda dengan apa yang dibutuhkan oleh Windows Vista dan Windows 7 :) System Requirements- 1 gigahertz (GHz) or faster 32-bit (x86) or 64-bit (x64) processor
- 1 gigabyte (GB) RAM (32-bit) or 2 GB RAM (64-bit)
- 16 GB available hard disk space (32-bit) or 20 GB (64-bit)
- DirectX 9 graphics device with WDDM 1.0 or higher driver
- Taking advantage of touch input requires a screen that supports multi-touch
So , bagi temen - temen yang ingin merasakan preview Windows 8 silahkan unduh saja link diatas :)
tapi inget yah .. di edisi developer preview ini belum semua fungsi yang ditampilkan pada WebCast semalam ada :) , tapi gak ada salahnya buat mencobanya . Untuk preview selanjutnya tunggu saja :D masih proses download soalnya , hehehe :D Thanks Cheers

|
-
Hello all, ketemu lagi :) sekarang saya akan coba membagikan bagaimana cara mengetahui Unique ID ( Identity ID ) pada saat kita melakukan insert data menggunakan store procedure :) Hal ini biasanya kita perlukan untuk melakukan Insert pada dua buah tabel / lebih yang saling berkaitan dan saling terpisah store procedurenya. contoh store procedure yang akan membalikan nilai Identity ID yang baru adalah sebagai berikut : CREATE PROCEDURE [dbo].[test] AS INSERT INTO dbo.A VALUES ('Billy')
RETURN SCOPE_IDENTITY(); maka nanti sql tersebut akan mengembalikan nilai dari unique id yang baru saja digunakan. untuk di ASP.Net bagaimana kita menangkap value kembaliannya ? dibawah ini contoh code function yang dapat digunakan :) public int insertDataTest() {
SqlConnection conn = new SqlConnection(strConnectionString); SqlCommand command = new SqlCommand("test", conn); command.CommandType = CommandType.StoredProcedure; command.Parameters.Add("@ReturnValue", SqlDbType.Int, 4).Direction = ParameterDirection.ReturnValue; conn.Open(); command.ExecuteNonQuery(); int returnId = (int)command.Parameters["@ReturnValue"].Value; conn.Close(); return returnId; } Oke sekian kali ini :) semoga bermanfaat, apabila teman - teman ada cara yang lebih simple ataupun yang lainnya mohon berbagi juga yah, biar kita sama - sama belajar :D
Cheers
|
-
Hello All, seringkali kita ingin mendapatkan value dari sebuah Drop Down List dalam asp.net untuk digunakan oleh control yang lain semisal textbox. dalam asp.net event selectedIndexChanged pada Dropdownlist tidak akan dieksekusi tanpa dilakukan sebuah PostBack hal ini cukup merepotkan pada waktu / situasi tertentu :) Hal itu sebenarnya dapat kita akali dengan menggunakan bantuan javascript :) oke langsung ajah :) semisal ada dropdownlist dengan id : DDL_A dan textbox dengan id : txt_A.
ini code javascriptnya : <script type="text/javascript> function changeDDL(){ document.getElementById('<%=txt_A.ClientID%>').value = document.getElementById('<%=DDL_A.ClientID%>').value; } </script> kemudian tambahkan script berikut pada .aspx.cs : protected void Page_Load(object sender, EventArgs e) { //your another code if (!IsPostBack) { DDL_A.Attributes.Add("onchange", "BLOCKED SCRIPTchangeValueText();"); } } oke sekarang coba jalankan :) apabila berhasil maka value pada textbox " txt_A" akan berubah mengikuti value dari DDL_A. sekian , semoga bermanfaat. Cheers :)
|
-
-
Hello all, kali ini saya akan share lagi tentang hal bagaimana cara membuat form Login yang berbasiskan pada user di Active Directory ( pengalaman di kantor :D ). Hal ini biasanya digunakan pada aplikasi yang akan menggunakan sistem SSO ( Single Sign On ) sehingga user hanya memiliki satu account credential untuk semua aplikasi ( baik itu dalam satu platform ataupun lintas platform ).
Oke langsung saja go to the code :) dibawah ini adalah helper class yang dapat digunakan untuk dapat melakukan LDAP ( AD ) Auth. ( dalam contoh ini saya beri nama class ini dengan : ActiveDirectoryValidator.cs ) code : using System; using System.Collections.Generic; using System.Text; using System.DirectoryServices;
namespace UserAuthentication { public class ActiveDirectoryValidator { private string _path; private string _filterAttribute; private string _deptName;
public ActiveDirectoryValidator(string path) { _path = path; }
public bool IsAuthenticated(string domainName, string userName, string password) { string domainAndUsername = domainName + @"\" + userName; DirectoryEntry entry = new DirectoryEntry(_path, domainAndUsername, password); try { // Bind to the native AdsObject to force authentication. Object obj = entry.NativeObject; DirectorySearcher search = new DirectorySearcher(entry); search.Filter = "(SAMAccountName=" + userName + ")"; search.PropertiesToLoad.Add("cn"); SearchResult result = search.FindOne(); if (null == result) { return false; } // Update the new path to the user in the directory _path = result.Path; _filterAttribute = (String)result.Properties["cn"][0]; string[] _split; _split = _path.Split(','); _deptName = _split[1]; _deptName = _deptName.Replace("OU=", ""); } catch (Exception ex) { throw new Exception("Login Error: " + ex.Message); } return true; }
public string getDeptName() { if (_deptName != "") { return _deptName; } else { return null; } } } } kemudian contoh penggunaan di dalam UI ( .aspx ) adalah sebagai berikut : ....
// Path to you LDAP directory server. // Contact your network administrator to obtain a valid path. string adPath;
//string adPath = "LDAP://" + System.Configuration.ConfigurationSettings.AppSettings["DefaultActiveDirectoryServer"]; ; if (domainName.Length > 0) { adPath = "LDAP://" + domainName; } else { adPath = "LDAP://" + System.Configuration.ConfigurationSettings.AppSettings["DefaultActiveDirectoryServer"]; } ActiveDirectoryValidator adAuth = new ActiveDirectoryValidator(adPath); if (true == adAuth.IsAuthenticated(domainName, userName, password)) { // Create the authetication ticket FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(1, userName, DateTime.Now, DateTime.Now.AddMinutes(60), false, ""); // Now encrypt the ticket. string encryptedTicket = FormsAuthentication.Encrypt(authTicket); // Create a cookie and add the encrypted ticket to the // cookie as data. string deptName = adAuth.getDeptName(); lblError.Text = deptName; HttpCookie authCookie = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket); // Add the cookie to the outgoing cookies collection. HttpContext.Current.Response.Cookies.Add(authCookie); // Redirect the user to the originally requested page //HttpContext.Current.Response.Redirect(FormsAuthentication.GetRedirectUrl(userName, false)); } ......
jadi gampang bukan membuat sebuah Login Form di ASP.net yang berbasis LDAP ( AD ) Auth ? :D selamat mencoba :) cheers...
|
-
hello all, 
ketemu lagi dengan saya kali ini kita akan coba membahas bagaimana membuat Data Access Layer Class secara manual ( by code ) menggunakan C-Sharp. Data Access Layer Class sering kali digunakan di kala kita mencoba membuat aplikasi dengan N-Tier. :) oke kita langsung saja :) semisal ada sebuah table products dengan column id_product dan nama_product . maka kita dapat membuat sebuah class sebagai berikut : using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Xml.Linq; using System.Data.Linq.Mapping; using System.Data.Linq; using System.Reflection; namespace Test { [Table(Name = "PRODUCTS")] public class selectAllProducts { private int id_product_; private string nama_product_;
[Column(DbType = "int", IsPrimaryKey = true)] public int id_product { get { return id_product_; } set { id_product_ = value; } }
[Column(DbType = "varchar(50)", CanBeNull = true)] public string nama_product { get { return nama_product_; } set { nama_product_ = value; } } }
public class selectAllProducts : DataContext { public selectAllProducts(string connection) : base(connection) { } [Function(Name = "selectAllProducts", IsComposable = false)] // selectAllProducts <-- nama store procedure public ISingleResult<selectAllProducts> getAllComment() {
IExecuteResult objResult = this.ExecuteMethodCall(this, (MethodInfo)(MethodInfo.GetCurrentMethod())); ISingleResult<selectAllProducts> objresults = (ISingleResult<selectAllProducts>)objResult.ReturnValue; return objresults; }
}
}
|
-
Hello all, kali ini saya akan share lagi tentang hal berbau query sql server. kita akan coba membuat function pada sql server ( Scalar - Valued ) . Manfaat SQL Server User-Defined Function sangat banyak. Pertama, kita dapat menggunakan fungsi-fungsi di berbagai tempat begitu banyak bila dibandingkan dengan Store Procedure SQL Server . Kemampuan untuk fungsi untuk bertindak seperti table (untuk table Inline dan Multi-Statement table) memberikan pengembang kemampuan untuk membuat logika kompleks ke dalam blok kode lebih pendek dan lebih pendek. Ini biasanya akan memberikan manfaat tambahan membuat kode yang kurang kompleks dan lebih mudah untuk menulis dan memelihara. Dalam kasus Scalar Valued User-Defined , kemampuan untuk menggunakan fungsi ini di mana saja Anda dapat menggunakan skalar dari tipe data yang sama juga merupakan hal yang sangat kuat. Menggabungkan keuntungan ini dengan kemampuan untuk melewati parameter ke dalam database objek membuat SQL Server User-Defined Function menjadi alat yang powerfull. contohnya : CREATE FUNCTION whichContinent
(@Country nvarchar(15))
RETURNS varchar(30)
AS
BEGIN
declare @Return varchar(30)
select @return = case @Country
when 'Argentina' then 'South America'
when 'Belgium' then 'Europe'
when 'Brazil' then 'South America'
when 'Canada' then 'North America'
when 'Denmark' then 'Europe'
when 'Finland' then 'Europe'
when 'France' then 'Europe'
else 'Unknown'
end
return @return
end apabila kita coba jalankan maka akan menghasilkan : print dbo.WhichContinent('USA')- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Country Continent
--------------- ------------------------------
USA North America jadi gampang bukan membuat sebuah function di dalam sql server ? :D selamat mencoba :) cheers...
|
-
Hello all, ketemu lagi kali ini kita akan mencoba youtube instant ( like ytinstant.com ) tapi versi simplenya menggunakan Silverlight 4 ( Out of Browser ). kurang lebih aplikasinya nanti akan berbentuk seperti gambar dibawah .  developer tools yang digunakan seperti biasa menggunakan visual studio 2010. untuk pertama buatlah project baru dengan menggunakan Silverlight Application kemudian beri nama project secara bebas kemudian klik create. untuk XAML Code ( tampilan ) yang digunakan antara lain : 1: <UserControl.Background>
2: <LinearGradientBrush EndPoint="1,0.5" StartPoint="0,0.5">
3: <GradientStop Color="Black" Offset="0" />
4: <GradientStop Color="White" Offset="1" />
5: </LinearGradientBrush>
6: </UserControl.Background>
7: <Grid x:Name="LayoutRoot" DataContext="{Binding}">
8: <Grid Margin="12,20,12,12" Name="grid1">
9: <Grid.RowDefinitions>
10: <RowDefinition Height="53*" />
11: </Grid.RowDefinitions>
12: <TextBox Margin="17,20,0,0" Name="txtKeyword" Text="Please enter your keyword ...." GotFocus="txtKeyword_GotFocus" TextChanged="txtKeyword_TextChanged" Height="28" VerticalAlignment="Top" HorizontalAlignment="Left" Width="264" />
13: <WebBrowser Margin="17,62,17,147" Name="webBrowser1" />
14: <TextBlock Height="28" Margin="296,20,0,0" Name="tbStatus" Text="" VerticalAlignment="Top" Foreground="Black" HorizontalAlignment="Left" Width="213" FontSize="8" />
15: <ListBox Margin="18,0,17,14" Name="lbOther" Height="128" VerticalAlignment="Bottom" ItemsSource="{Binding}" SelectionChanged="lbOther_SelectionChanged">
16: <ListBox.ItemTemplate>
17: <DataTemplate>
18: <StackPanel Orientation="Horizontal">
19: Image Name="thumbnails" Source="{Binding thumbnail}" Stretch="Fill" Width="100" Height="100" />
20: <TextBlock Name="title" Text="{Binding title}" Foreground="Black"/>
21: </StackPanel>
22: </DataTemplate>
23: </ListBox.ItemTemplate>
24: </ListBox>
25: </Grid>
26: <sdk:Label Height="20" Margin="12,3,360,0" Name="label1" VerticalAlignment="Top" Content="Youtube Instant in Silverlight" />
27: <Grid.Background>
28: <LinearGradientBrush EndPoint="1,0.5" StartPoint="0,0.5">
29: <GradientStop Color="#FFBAE4FF" Offset="0" />
30: <GradientStop Color="White" Offset="1" />
31: </LinearGradientBrush>
32: </Grid.Background>
33: </Grid>
34: /UserControl>
kemudian buat sebuah class bernama ydata ( digunakan untuk membuat custom list ) , coding didalamnya antara lain :
1: public class ydata
2: {
3: public string url { get; set; }
4: public string title { get; set; }
5: public string thumbnail { get; set; }
6: public string description { get; set; }
7: }
kemudian main behind code ada dibawah ( diletakana pada MainPage.xaml.cs ) :
1: using System;
2: using System.Collections.Generic;
3: using System.Linq;
4: using System.Net;
5: using System.Windows;
6: using System.Windows.Controls;
7: using System.Windows.Documents;
8: using System.Windows.Input;
9: using System.Windows.Media;
10: using System.Windows.Media.Animation;
11: using System.Windows.Shapes;
12: using Newtonsoft.Json.Linq;
13: using System.Threading;
14: using System.Windows.Threading;
15: using System.Collections.ObjectModel;
16:
17: namespace YtInstantSL
18: {
19: public partial class MainPage : UserControl
20: {
21: string MyDevKey = "YourDevKey";
22: IList<ydata> videos;
23: IList<ydata> videosThumb;
24: private bool isi;
25: DispatcherTimer dispatcherTimer = new DispatcherTimer();
26: public MainPage()
27: {
28: InitializeComponent();
29: isi = false;
30:
31: dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick);
32: dispatcherTimer.Interval = new TimeSpan(0, 0, 1);
33:
34: }
35:
36: private void txtKeyword_GotFocus(object sender, RoutedEventArgs e)
37: {
38: if (txtKeyword.Text == "Please enter your keyword ....")
39: {
40: txtKeyword.Text = "";
41: }
42: }
43:
44: private void txtKeyword_TextChanged(object sender, TextChangedEventArgs e)
45: {
46:
47: wc_todo("http://gdata.youtube.com/feeds/api/videos?v=2&format=5&alt=jsonc&max-results=5&q=" + txtKeyword.Text + "&key=" + MyDevKey);
48: if (txtKeyword.Text.Length > 0)
49: {
50: dispatcherTimer.Start();
51: }
52:
53: }
54:
55: private void wc_todo(string Uri)
56: {
57: WebClient wc1 = new WebClient();
58: WebClient wc2 = new WebClient();
59: try
60: {
61: if (!(wc1.IsBusy))
62: {
63: wc1.DownloadStringAsync(new Uri(Uri, UriKind.Absolute));
64: wc1.DownloadStringCompleted += new DownloadStringCompletedEventHandler(wc_DownloadStringCompleted);
65: }
66: else if (!(wc2.IsBusy))
67: {
68: wc2.DownloadStringAsync(new Uri(Uri, UriKind.Absolute));
69: wc2.DownloadStringCompleted += new DownloadStringCompletedEventHandler(wc_DownloadStringCompleted);
70: }
71: }
72: catch (WebException ex)
73: {
74: MessageBox.Show(ex.Message);
75: }
76:
77: }
78:
79: public void wc_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs c)
80: {
81: try
82: {
83: var o = JObject.Parse(c.Result);
84: videos = (from v in o["data"]["items"].Children() select new ydata { title = (string)v["title"], description = (string)v["description"], thumbnail = (string)v["thumbnail"]["sqDefault"], url = (string)v["content"]["5"] }).ToList<ydata>();
85:
86: if (videos.Count() > 0)
87: {
88: isi = true;
89: tbStatus.Text = txtKeyword.Text;
90: videosThumb =videos ;
91: lbOther.DataContext = videosThumb;
92: }
93: }
94: catch (Exception ex)
95: {
96: if (txtKeyword.Text != "")
97: {
98: tbStatus.Text = "Error : Video with this keyword not found.";
99: }
100: }
101: }
102: private void dispatcherTimer_Tick(object sender, EventArgs e)
103: {
104: if(isi == true){
105: try
106: {
107:
108: webBrowser1.Navigate(new Uri(videos[0].url,UriKind.Absolute));
109: dispatcherTimer.Stop();
110: }
111: catch (Exception ex)
112: {
113: MessageBox.Show(ex.Message);
114:
115: }
116: }
117: }
118:
119: private void lbOther_SelectionChanged(object sender, SelectionChangedEventArgs e)
120: {
121: webBrowser1.Navigate(new Uri(videos[lbOther.SelectedIndex].url));
122: }
123: }
124: }
setelah itu sekarang coba debug , bila gak ada error , maka teman – teman telah berhasil . dari sini temen- temen bisa kembangkan ke fitur yang lain 
seperti auto next to next queue video dan lain sebagainya 
Selamat mencoba dan berkreatif ria 
Cheers All.

|
-
hello all, ketemu lagi dengan saya kali ini kita akan coba membahas bagaimana membuat paging di gridview secara manual ( by code ) menggunakan linQ. semisal ada sebuah table products dengan column id_product dan nama_product . dengan isi sebagai berikut : id_product | nama_product 1 | bola 2 | raket 3 | net 4 | senar' 5 | kaos olahraga 6 | peluit kita akan mencoba membuat paging yang akan memunculkan 2 data pada setiap halamannya  maka query linqnya kurang lebih adalah sebagai berikut  1: var Results = (from p in products
2: select p).Take(jumlahdata).Skip(StartRow);
dimana jumlahdata nantinya akan kita isi 2 dan untuk mencari start row akan kita bahas di postingan selanjutnya.
so stay tune di channel ini hahaha

|
-
Sering kali ketika kita membangun sebuah DNS server, mengalami sebuah gangguan, dan kita perlu melakukan monitoring. Dalam Windows Server 2008 disediakan fitur untuk melakukan hal tersebut dengan sangat mudah  Untuk langkah – langkahnya antara lain adalah : ( Maaf untuk screenshot menyusul yah ) >>. Klik Start kemudian klik Administrative Tools dan kemudian klik DNS, >>. Pada list pane, klik kanan <YourComputerName> dan kemudian klik properties, >>. Klik tab monitoring, >>. Pada monitoring tab , check pilihan A Simple query against this DNS Server , dan kemudian klik Test Now, >>. Pada tab monitoring, pastikan A recursive query to Other DNS Servers dicentang dan kemudian klik Test Now, >>. Perhatikan hasil pengetestannya. untuk melakukan penghentian service DNS Server sementara dapat dilakukan dengan command : sc stop dns dan untuk menjalankannya kembali kita dapat menggunakan sc start dns , karena terkadang kita perlu melakukan restart pada DNS Server kita. Demikian tulisan kali ini, semoga dapat bermanfaat. Cheers, 
|
More Posts Next page »
|
|
|