목록STUDYING/C# (48)
MY MEMO
UWP -> WPF로 변경한 이후 새로 WPF를 만드는 것은 더이상 WPF를 깊게 공부하지 않을 것 같아 UWP에 같이 쓴다. 1. 빌드를 새로 할 것이기 때문에 솔루션을 정리해준다. 2. 프로젝트 -> 프로젝트 이름 속성 3. 아래와 같이 설정한다 4. 빌드 -> Release 선택 6. 빌드 -> 솔루션 빌드 7. 빌드 -> 일괄 빌드 8. Release선택 -> 빌드 9. 자신의 프로젝트가 있는 곳 bin->Release에 실행파일 존재 아이콘 변경하기 1. MainWindow.xaml에서 Window에 Icon을 추가해준다. (.ico 확장자) => window application의 아이콘과 작업표시줄에 뜨는 아이콘 2. 프로젝트 -> 프로젝트 이름 속성 에서 아이콘 및 매니페스트 -> 아이콘을..
1. back button MainPage.xaml.cs// 페이지가 활성화 될때 호출된다. protected override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); var currentView = SystemNavigationManager.GetForCurrentView(); // back button을 활성화 currentView.AppViewBackButtonVisibility = AppViewBackButtonVisibility.Visible; //BakcRequested event가 생기면 Back_Tapped 함수를 실행한다. currentView.BackRequested += Back_Tapped; } // 페이..
SQLite 환경 설정 //한 번만 하면 됨 1. 도구 -> 확장 및 업데이트 2. SQLite for Universal Windows Platform // 매번 해줘야함 3. 참조 -> 오른쪽 클릭 -> 참조 추가 4. SQLite for Universal Window Platform 추가 5. 도구 -> NuGet 패키지 관리자 -> 솔루션용 NuGet 패키지 관리 6. SQLite.Net-PCL 설치 SQLite Browser (Data의 변화를 볼 수 있음) 다운로드 : http://sqlitebrowser.org/ 자신에게 맞는 os의 exe파일을 다운로드
출처 : https://academy.realm.io/kr/posts/eric-maxwell-mvc-mvp-and-mvvm-on-android/ MVC - Model데이터+상태+비즈니스 로직 = 두뇌뷰나 컨트롤러에 묶이지 않아 많은 곳에 재사용 가능 - View모델의 표현 즉 ui버튼을 눌렀을 때 어떤 일을 하는지 알지 못함 - Controller뷰가 컨트롤러에게 사용자가 버튼을 눌렀다고 알리면컨트롤러는 어떻게 상호작용할지 결정 장점- 모델과 뷰가 훌륭하게 분리됨- 쉽게 모델을 테스트 단점 -> 컨트롤러- 테스트의 용이성 : 컨트롤러가 api에 깊게 종속 -> 유닛 테스트가 어려움- 모튤화 및 유연성 : 컨트롤러가 뷰에 단단히 결합 -> 뷰 변경시 컨트롤러 변경- 유지 보수 : 컨트롤러가 많아지면서 코드..
출처 : https://www.youtube.com/watch?v=6Fff1whO0LY Enter를 누르면 list가 추가되고 checkbox를 선택할 수 있게 하는 to do list의 간단한 버전이다. Library.csusing System.Threading.Tasks; using Windows.UI.Popups; using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Input; public class Library { /* public async Task Confirm(string content,string title, string ok, string cancel) { bool result = false; MessageDialog dialog = new ..
출처 : https://www.youtube.com/watch?v=WL1WqJlV9Y4 1. Checkbox에 오른쪽 마우스 -> 템플릿 편집 -> 복사본 편집 2. 이름 변경 MainPage.xaml 위의 새로운 Style Resource를 만들면 많은 코드가 나온다 그 중에서 아래처럼 주석으로 바꿔주고 새로운 코드를 추가해주면 된다. 결과 화면
MainPage.xaml MainPage.xaml.cs using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Runtime.InteropServices.WindowsRuntime; using Windows.ApplicationModel.DataTransfer; using Windows.Foundation; using Windows.Foundation.Collections; using Windows.Storage; using Windows.UI.Xaml; using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Controls.Primitives; ..
stack Panel: 자식요소를 행이나 열로 나열하는데 매우 간단한 컨트롤 Orientation = "Horizontal" or "Vertical" Grid: 컨트롤의 열과 행을 배분하고자 할 때 사용 IUICommand: Represent Command in a context menu or message dialog box +) https://docs.microsoft.com/en-us/uwp/api/windows.ui.popups.iuicommand Async비동기 : 동시에 일어나지 않음 -> 순서가 있음 async를 쓰면 Task가 들어가고async Task await라는 걸 써서 그 함수가 다 끝나기 이전가지 실행하지 않음+) https://msdn.microsoft.com/ko-kr/libr..
출처 : https://www.youtube.com/watch?v=fxAWxg-_T_w Library.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Windows.ApplicationModel.Appointments; using Windows.Foundation; using Windows.UI.Popups; using Windows.UI.Xaml; using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Media; namespace UWPAppointmentApp { class Librar..
출처 : https://www.youtube.com/watch?v=b79xcS6yMDs&t=350s+)json 파일의 빌드작업을 내용으로 변경 Customers.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace UWPSuggestBox.DataSource { public class Customers { public string name; public override string ToString() { return string.Format("{0}",name); } } } result.json { "customers": [ { ..