C#从零开始学习(基本语法概念)(2)

深入C#

本章所有的代码都放在
https://github.com/hikinazimi/head-first-Csharp

控制台项目结构

每个C#程序采用同样的方式组织,命名空间,类和方法

csharp 复制代码
using System;

namespace helloworld//命名空间
{
    class Program//类
    {
        static void Main(string[] args)//程序入口
        {
            Console.WriteLine("Hello World!");
        }
    }
}

常见语法

  1. 变量声明
csharp 复制代码
int height;
bool flag;
string message = "zzz";
  1. 操作符
csharp 复制代码
int width = 3;
width++;
string result = "The";
result = result + "area";
  1. 条件
csharp 复制代码
int height = 10;
string message = ""'
if(height==5)
{
	message = "height is 5";
}
  1. 循环
csharp 复制代码
while()
{
}
do
{
}while();

for(int i=0;i<10;i++)
{
}

控制驱动用户界面的机制

介绍了文本框,单选钮,列表框,组合框,通过这些框输入数据,显示在界面上

创捷一个WPF应用来试验控件

设置Grid创建一个三行两列的框架

xml 复制代码
<Grid>
        <Grid.RowDefinitions>
            <RowDefinition/>
            <RowDefinition/>
            <RowDefinition Height=".5*"/>
        </Grid.RowDefinitions>

        <Grid.ColumnDefinitions>
            <ColumnDefinition/>
            <ColumnDefinition/>
        </Grid.ColumnDefinitions>

    </Grid>

添加一个textBox控件

点击工具箱中textBox,并设置对应参数

增加一个事件处理器只允许输入数字

在textBox中PreviewTextInput中增添一个函数

对应函数填写如下代码

csharp 复制代码
        private void numberTextBox_PreviewTextInput(object sender, TextCompositionEventArgs e)
        {
            e.Handled = !int.TryParse(e.Text, out int result);
        }

用户在textBox中输入文本时,在更新前,会先调用这个函数

combox的使用

xml 复制代码
        <ListBox x:Name="myListBox" Grid.Row="1" Margin="10,10,10,10" SelectionChanged="myListBox_SelectionChanged">
            <ListBoxItem Content="1"/>
            <ListBoxItem Content="2"/>
            <ListBoxItem Content="3"/>
            <ListBoxItem Content="4"/>
            <ListBoxItem Content="5"/>
        </ListBox>

这是一个下拉选择框

C#逻辑代码,通过判断选择的数字,将其赋值给number

csharp 复制代码
        private void myListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (myListBox.SelectedItem is ListBoxItem listBoxItem)
            {
                number.Text = listBoxItem.Content.ToString();
            }
        }

最终效果如下图所示,在不同的模块输入不同的数字,会同步在右边显现

至此,我们就学习完了第二章,然后让我们复习一下本章讲了什么

  • 学习了C#常见的语法如变量声明,操作符,条件判断和循环语句
  • 学习了WPF中常见的控件的使用
相关推荐
大鹏说大话6 分钟前
美业微信会员系统哪个好
开发语言
具身AGI9 分钟前
人类第一视角数据走上评测台:物理AI 人类学习路线
学习
dadaobusi36 分钟前
5G核心网概念复习
学习
半亩码田37 分钟前
C#转Python第3.6篇:Python 的 @property 比 C# 的 get/set 更灵活
java·python·c#
程序员与背包客_CoderZ1 小时前
高性能分布式KV存储引擎RocksDB入门与C/C++编码实战
c语言·开发语言·数据库·c++·分布式·分布式数据库·rocksdb
钱栈up1 小时前
Mac 开发机一键发版不用切环境:我这样改造了团队的后端部署脚本Maven编译卡住20分钟?我靠两步定位到2处隐蔽编译错误
开发语言·python·macos
william_yangshun1 小时前
【大模型部署实战】kimi-k3-in-c 中文版:用 176KB 纯 C99 引擎在 CPU 上跑 Kimi K3 上手指南
c语言·开发语言
Sagittarius_A*1 小时前
Burst Lab | PHP 审计 14|反序列化(四):字符串逃逸与绕过技巧
开发语言·安全·php·web·反序列化
名字还没想好☜1 小时前
Go 用 slices/maps 标准库泛型函数:告别手写 Contains、Sort、去重(Go 1.21)
开发语言·后端·算法·golang·go
淼澄研学2 小时前
Python实战:基于LangChain与Chroma构建企业级RAG知识库问答系统
开发语言·python·langchain